我在我的防火墙上使用了120端口并在服务器上打开了ufw端口(Ubuntu 16.04) 但是在运行此代码时;
var app = require('express')();
var http = require( "http" ).createServer( app );
var io = require( "socket.io" )( http );
http.listen(120, "xxxx.xxx.xx");
io.on('connection',function(socket){
console.log("A user is connected");
});
我收到此错误;
throw er; // Unhandled 'error' event
^
Error: listen EADDRNOTAVAIL xxxx.xxxxxx:120
at Object.exports._errnoException (util.js:870:11)
at exports._exceptionWithHostPort (util.js:893:20)
at Server._listen2 (net.js:1224:19)
at listen (net.js:1273:10)
at net.js:1382:9
at nextTickCallbackWith3Args (node.js:452:9)
at process._tickCallback (node.js:358:17)
at Function.Module.runMain (module.js:444:11)
at startup (node.js:136:18)
at node.js:966:3
答案 0 :(得分:0)
可能是端口120已被其他东西使用。
您可以使用netstat查看该端口上正在侦听的内容:
sudo netstat -plnt | grep ':120'
另外需要提及的是,低端口有时会被保留或阻塞 - 您可能只想尝试更高端口,' 1337'对于NodeJS总是有用的: - )