运行 Web 服务器上使用 NodeJS 的简单脚本
Running a simple script on a web server using NodeJS
我正在尝试使用 NodeJS 在我的网络服务器上制作一个简单的 JS 脚本 运行:
var http = require('http');
var server = http.createServer(function(req,res) {
res.writeHead(200,{"Content-Type":"text/plain"});
res.end("Hello World!");
});
server.listen(8000);
console.log('Server running');
我在本地 运行 时的输出 :
curl http://127.0.0.1:8000
Hello World!
但是,当我尝试 curl 到我的网络服务器时超时。
我不知道它是否重要,但我在网络服务器上安装了 apache2。非常感谢任何帮助。
您无法从外部访问 node.js,因为它正在侦听本地主机 IP,即 127.0.0.1。您需要配置 node.js 以侦听 0.0.0.0,以便它能够接受您计算机上所有 IP 的连接。
试试这个:
server.listen(8000, "0.0.0.0");
如果它仍然不起作用并且您正在使用 iptables,您可能需要打开端口 8000。试试这个:
iptables -I INPUT -p tcp --dport 8000 -j ACCEPT
我正在尝试使用 NodeJS 在我的网络服务器上制作一个简单的 JS 脚本 运行:
var http = require('http');
var server = http.createServer(function(req,res) {
res.writeHead(200,{"Content-Type":"text/plain"});
res.end("Hello World!");
});
server.listen(8000);
console.log('Server running');
我在本地 运行 时的输出 :
curl http://127.0.0.1:8000
Hello World!
但是,当我尝试 curl 到我的网络服务器时超时。 我不知道它是否重要,但我在网络服务器上安装了 apache2。非常感谢任何帮助。
您无法从外部访问 node.js,因为它正在侦听本地主机 IP,即 127.0.0.1。您需要配置 node.js 以侦听 0.0.0.0,以便它能够接受您计算机上所有 IP 的连接。 试试这个:
server.listen(8000, "0.0.0.0");
如果它仍然不起作用并且您正在使用 iptables,您可能需要打开端口 8000。试试这个:
iptables -I INPUT -p tcp --dport 8000 -j ACCEPT