133 votes

comment libérer localhost de l'erreur : listen EADDRINUSE

Je teste un serveur écrit en nodejs sur Windows 7. et lorsque j'essaie d'exécuter le testeur en ligne de commande, j'obtiens l'erreur suivante

Error: listen EADDRINUSE
at errnoException (net.js:614:11)
at Array.0 (net.js:704:26)
at EventEmitter._tickCallback (node.js:192:40)

comment puis-je le réparer sans redémarrer ?

9 votes

sudo killall node peut être utile

20voto

swathy valluri Points 856

Lorsque vous obtenez une erreur Error : listen EADDRINUSE,

Essayez d'exécuter les commandes shell suivantes :

netstat -a -o | grep 8080
taskkill /F /PID 6204

I grep pour 8080, car je sais que mon serveur fonctionne sur le port 8080. ( static me dit quand je le démarre : "serving "." at http://127.0.0.1:8080 '.) Vous devrez peut-être chercher un autre port.

17voto

Arun Kasyakar Points 589

Supposons que votre serveur fonctionne sur port 3000

lsof -i tcp:3000
    COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
    node    11716 arun   11u  IPv6 159175      0t0  TCP *:3000 (LISTEN)

après cela, utilisez kill -9 <pid>

dans le cas ci-dessus sudo kill -9 11716

13voto

Atta ur rahman Points 11

Utilisez la commande ci-dessous pour tuer un processus fonctionnant sur un certain port - 3000 dans l'exemple ci-dessous

kill -9 $(lsof -t -i:3000)

7voto

iloo Points 535

Une solution possible qui a fonctionné pour moi était simplement de fermer la fenêtre du navigateur où j'avais le " http://localhost:3000/ " script en cours d'exécution.

7voto

Surender Kumar Points 281

Vérifiez l'ID du processus

sudo lsof -i:8081

Puis tuer le processus particulier

sudo kill -9 2925

enter image description here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X