在Mint Maya 64上,如果我在终端中运行“node index.js”(v0.10.21),我会收到此错误:
events.js:72
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE
at errnoException (net.js:901:11)
at Server._listen2 (net.js:1039:14)
at listen (net.js:1061:10)
at Server.listen (net.js:1127:5)
at Object.<anonymous> (/home/USER/Desktop/server/index.js:73:24)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
我的apache2服务器已停止,并且没有其他节点服务器正在运行。
我试过“killall node” - &gt;节点:找不到进程
使用“sudo netstat -tulpn”时,没有迹象表明端口80有任何监听。
因为它是我的第一个节点服务器实验,所以我不知道如何继续。
答案 0 :(得分:4)
检查 index.js 文件中Node使用哪个端口作为开始。 还有另一个使用此端口的应用程序。 所以你有两个选择:
答案 1 :(得分:0)
显然,端口被EADDRINUSE
错误占用。如前所述,您必须使用其他端口或终止该应用程序。
您可以做的其他事情是识别占用该特定端口的进程并将其杀死(这在某些概念中非常方便)
您可以在此处使用fuser
实用程序。
fuser命令是一个非常智能的UNIX实用程序,用于查找哪个进程正在使用文件,目录或套接字。它还提供有关拥有进程和访问类型的用户的信息。热熔器工具使用指定的文件或文件系统显示每个进程的进程ID(PID)。
在这里提供一个相关的热熔器链接。
https://www.digitalocean.com/community/tutorials/how-to-use-the-linux-fuser-command