node.js server.listen在特定的IP地址EADDRNOTAVAIL上

时间:2015-09-17 15:15:32

标签: node.js

当我尝试侦听特定的IP地址时,我收到错误。

var http = require('http');

http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(8080, "10.211.56.1");

console.log('Server running at http://10.211.56.1:8080/');

我收到以下错误:

➜  node-test  sudo node server.js
Server running at http://10.211.56.1:8080/
events.js:85
      throw er; // Unhandled 'error' event
            ^
Error: listen EADDRNOTAVAIL
    at exports._errnoException (util.js:746:11)
    at Server._listen2 (net.js:1139:19)
    at listen (net.js:1182:10)
    at net.js:1280:9
    at dns.js:85:18
    at process._tickCallback (node.js:355:11)
    at Function.Module.runMain (module.js:503:11)
    at startup (node.js:129:16)
    at node.js:814:3

1 个答案:

答案 0 :(得分:2)

这基本上意味着您使用的ip / port组合不适用于您的服务器。这可能是因为端口已在使用中,或者该IP地址不是您的服务器正在使用的地址。

您应该使用localhost:someport0.0.0.0:someport,其中someport是当前未使用的端口。