节点 – 我的应用程序出了什么问题?

我有端口80上运行的httpd,我试图将节点应用绑定到端口8080。

这里是:

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

显然已经通过ssh命令行运行它

 node myApp.js 

但是每当我在浏览器中input“http:// my-domain :8080 /”,它只是挂起,并没有给我任何东西。

我已经尝试了一系列不同的端口,并监听主机名0.0.0.0,所有的结果都一样。

根据build议的意见运行netstat,结果是:

 tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 3894/node 

我在南非的非托pipeVPS上使用centOS!

编辑:看起来像它的防火墙问题,有人可以指出我在正确的方向,如何configuration一个CentOS VPS的防火墙..?

可能是你的防火墙设置。 在服务器的shell提示符下,尝试连接curl

 curl -v http://localhost:8080/ 

如果你可以通过localhost访问它,但不通过浏览器,那么你很可能有防火墙问题。

如果您可以通过localhost访问服务器,那么接下来要做的就是通过IP地址从外部testing服务器。 如果你可以通过IP地址访问它,那么你有一个DNS问题。 如果你不能从外部通过IP地址访问它,那么你有防火墙问题。

防火墙问题是平台特定的。 我们需要知道这个平台,指出你正确的方向。

试着写:

 var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(8080); console.log('Server running '); 

.listen(8080); 是在同一行。

或者用localhost:8080/从服务器运行它可能会阻塞外面