我是NodeJS的新手。 我有以下代码用于hello world。
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello World!\n I am the AWS cloud');
}).listen(8081);
console.log('Server is running at http://127.0.0.1:8081');
此代码保存在运行Ubuntu 14.04实例的AWS云上。 我在Ubuntu上安装了nodeJS。 当我运行代码时,它工作正常并显示控制台日志消息,但当我在另一台机器上打开Web浏览器并键入http://Public-IP-Address:8081时,它不起作用。
当我按Ctrl + c然后再次执行它来停止脚本时,它会显示以下错误消息:
Server is running at http://127.0.0.1:8081
events.js:85
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE
at exports._errnoException (util.js:746:11)
at Server._listen2 (net.js:1156:14)
at listen (net.js:1182:10)
at Server.listen (net.js:1267:5)
at Object.<anonymous> (/home/ubuntu/NodeJSscripts/hw.js:17:22)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
当我返回并更改端口号并再次运行脚本时,它会再次运行而不会产生任何错误,但Web浏览器仍然无法通过它的公共IP连接到服务器。