我在Rackspace中部署了一个nodejs服务器,可以在内部访问,如下所示:
curl http://127.0.0.1:8080
但是,即使我这样做,它也无法从外部(互联网)访问:
iptables -A OUTPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
这是我的代码的样子:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Simple server\n');
}).listen(8080, "0.0.0.0");
console.log('Server running at http://0.0.0.0:8080/');
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我认为你应该尝试不指定IP.
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Simple server\n');
}).listen(8080);
console.log('Server running at http://0.0.0.0:8080/');
Run Code Online (Sandbox Code Playgroud)
我很确定你必须使用
iptables -A OUTPUT -p tcp --sport 8080 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
对于传出规则(不dport).除此之外,也许有一个阻止流量的早期规则?试试iptables -L.
| 归档时间: |
|
| 查看次数: |
12928 次 |
| 最近记录: |