nodejs错误EADDRINUSE

时间:2017-03-12 19:17:57

标签: node.js port

当我输入“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 }

我正在使用FEDORA 23

3 个答案:

答案 0 :(得分:7)

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

答案 1 :(得分:2)

尝试再次运行killall node,然后node site.js。如果这不起作用,至少可以排除Node的原因。

答案 2 :(得分:-2)

您的站点正在侦听该端口两次。您可以检查您的代码是否有 2 条指令 .listen()