node.js使用记录

如何在外网访问node.js搭建的web服务器

在ubuntu环境中,我们经常使用node.js搭建简单的web测试环境。下面是一个简单的web服务器代码。我们可以通过node运行它,并且在ubuntu中通过浏览器访问它。

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

但是,对于这个服务,我们在外网是不能访问到的。我们如何能够在外网访问这个web服务呢?其实,很简单,我们只要将node.js监听的网址修改为0.0.0.0就可以了,这样node.js就可以对外提供web服务了。因为,127.0.0.1代表的是只监听本地的请求。

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

对于ip和端口的监听状态。可以通过netstat -lnp来察看。

ubuntu@ubuntu-System-Name:~/node.js$ node hello.js &
[1] 3485
ubuntu@ubuntu-System-Name:~/node.js$ Server running at http://0.0.0.0:8081/
ubuntu@ubuntu-System-Name:~/node.js$ netstat -lnp
(并非所有进程都能被检测到,所有非本用户的进程信息将不会显示,如果想看到所有信息,则必须切换到 root 用户)
激活Internet连接 (仅服务器)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:8081            0.0.0.0:*               LISTEN      3492/node
tcp        0      0 127.0.1.1:53            0.0.0.0:*               LISTEN      -
tcp6       0      0 :::22                   :::*                    LISTEN      -
udp        0      0 0.0.0.0:631             0.0.0.0:*                           -
udp        0      0 0.0.0.0:54910           0.0.0.0:*                           -

猜你喜欢

转载自blog.csdn.net/hnhkj/article/details/52384041