设置节点,使其对外可见

Set up node so it is externally visible?

本文关键字:节点 设置      更新时间:2023-09-26

新手问题-可能更适合ServerFault,如果是这样的话,我道歉。

我正在Ubuntu 11.10上安装node,遵循优秀的howtonode安装node的说明。

我可以得到在127.0.0.1:8000上运行的Hello World页面,但是我如何设置它以显示我的服务器的外部IP?

我习惯配置Apache -什么是Apache的"Hello World"页面的节点等效?

谢谢你的帮助。

更新:也许我需要的是一个关于托管Node的教程。如果有人能建议一个好的,那就太好了。

不需要任何配置来使你的外部IP地址与node.js一起工作,除非你以其他方式绑定它。

.listen(PORT);代替.listen(PORT, IP_ADDRESS_OR_HOST );

然后使用IP_ADDRESS_OR_HOST:PORT访问

您可以设置Node侦听任何IP/端口,查看http://nodejs.org/docs/v0.6.3/api/http.html#server.listen

或者从您提供的链接中快速修改的示例:

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello Node.js'n');
}).listen(80, "192.168.1.1");
console.log('Server running at http://192.168.1.1:80/');

您必须确保指定的端口(8000)是开放的。

  1. iptables -L INPUT -vufw status verbose检查打开端口,看看端口8000是否打开
  2. 更新规则打开端口iptables -I INPUT -p tcp -m tcp --dport 8000-j ACCEPTufw allow 8000
  3. 再次检查规则是否实现了iptables -L INPUT --line-numbersufw status verbose
  4. 如果仍然不可达,设置主机为0.0.0.0,以便可以从任何ip访问。
  5. 从浏览器尝试到达服务器的IP_ADDRESS_OR_HOST:PORT