nodejs错误EADDRINUSE

Pat*_*zyk 1 port node.js

当我输入"node site.js"时我得到了这个,我100%确定我没有运行这个节点两次.

    Error: listen EADDRINUSE :::3000
    at Object.exports._errnoException (util.js:1022:11)
    at exports._exceptionWithHostPort (util.js:1045:20)
    at Server._listen2 (net.js:1262:14)
    at listen (net.js:1298:10)
    at Server.listen (net.js:1376:9)
    at Server.listen.Server.attach (/root/node_modules/socket.io/lib/index.js:228:9)
    at Timeout._onTimeout (/root/nodejs/site.js:1005:29)
    at ontimeout (timers.js:365:14)
    at tryOnTimeout (timers.js:237:5)
    at Timer.listOnTimeout (timers.js:207:5)
  code: 'EADDRINUSE',
  errno: 'EADDRINUSE',
  syscall: 'listen',
  address: '::',
  port: 3000 }
Run Code Online (Sandbox Code Playgroud)

我正在使用FEDORA 23

Gui*_*ido 8

site.js尝试在该端口上侦听两次(另一个进程)已经在端口3000上侦听.找到该服务并停止/终止它.这个命令应该有帮助:lsof -i | grep 3000


Mat*_*ilo 5

尝试运行killall node,然后node site.js再运行。如果这不起作用,至少您可以将 Node 排除在此原因之外。

  • 试试这个命令:`netstat -tulpn` 这将列出你正在使用的端口,以及使用它们的程序。这里有一些 [文档](https://docs.fedoraproject.org/en-US/Fedora/11/html/Security_Guide/sect-Security_Guide-Server_Security-Verifying_Which_Ports_Are_Listening.html) (2认同)