我似乎无法弄清楚。我在Azure上创建了一个新的Ubuntu VM,可以通过SSH进入它。我安装了Node(已经完成了很多次),然后尝试从nodejs.org运行测试应用程序:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
但是,当我转到IP(与我从SSH入盒子的IP相同)+:1337时,它永远不会加载。我也尝试了:80,但还是没有运气。我也尝试在8000上运行python -m SimpleHTTPServer,但仍然无法查看该站点。我肯定错过了什么。
大家知道,我只是想设置一个简单的开发箱,上面有很多项目。我希望能够在任何地方进行我的项目。有些是100%的前端JS项目,因此SimpleHTTPServer会很好。有些也是Node项目。无论哪种情况,我都只想能够打一些端口,看看我在做什么。
哦,我也向虚拟机打开了Azure防火墙,将流量从端口80重定向到端口1337(https://www.evernote.com/shard/s5/sh/3aef8e76-04f6-48cb-84f9-32462bc425a7/f0cd749773a9d09cee66d00fe3e707c0)
最佳答案
您正在监听回送IP地址。尝试.listen(1337, '0.0.0.0');
在所有网络接口(interface)上监听