Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 节点-什么';我的应用程序出了什么问题?_Linux_Node.js - Fatal编程技术网

Linux 节点-什么';我的应用程序出了什么问题?

Linux 节点-什么';我的应用程序出了什么问题?,linux,node.js,Linux,Node.js,我在端口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.

我在端口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
但每当我打字的时候”http://my-domain:8080/“在浏览器中,它只是挂起,什么也不给我。”

我尝试了一系列不同的端口,并监听了主机名0.0.0.0,所有这些都给出了相同的结果

已按照建议的注释运行netstat,结果如下:

tcp        0      0 0.0.0.0:8080               0.0.0.0:*                   LISTEN      3894/node           
我在nan非托管VPS上使用centOS


编辑:看起来这是一个防火墙问题,有人能告诉我如何为CentOS VPS配置防火墙的正确方向吗

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

curl -v http://localhost:8080/
如果您可以通过
本地主机
访问它,但不能通过浏览器访问,则很可能存在防火墙问题

如果您可以通过
localhost
访问服务器,那么接下来要做的就是通过IP地址从外部测试服务器。如果您可以通过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/
运行它,他可能会从外部阻止它

您可以发布
netstat-ptan | grep8080
的输出吗?相应地编辑了问题:)对我来说,它似乎是在2222端口上运行,而不是在8080端口上运行。是什么让你在22222上发了grep?哦,这是在22222上试过的,我在8080、328001和其他很多机器上试过,结果都一样。运行服务器的机器和你的桌面一样吗?如果是
http://localhost:8080
应该可以。如果不是,客户端和服务器之间的关系是什么?我可以通过curl和localhost连接!!你知道我如何解决这个防火墙问题吗?非常感谢你,伙计!!我可以通过IP地址访问httpd服务器,但不能通过节点1:即http://*我的服务器IP*/将我带到php应用程序,但http://*我的服务器IP*:8080/不能。我确认这意味着我有防火墙问题;我在非托管VPS上使用CentOS