如果您在调用时不指定hostapp.listen,则服务器将在所有可用接口上运行,即0.0.0.0
您可以使用以下代码绑定IP地址
app.listen(3000, ’127.0.0.1’);解决方法
我对这些东西很陌生,并尝试制作一些快速应用
var express = require(’express’);var app = express();app.listen(3000,function(err) { if(err){ console.log(err); } else { console.log('listen:3000'); }});//something usefulapp.get(’*’,function(req,res) { res.status(200).send(’ok’)});
当我使用命令启动服务器时:
node server.js
一切都很好。
我在控制台上看到
listen:3000
当我尝试
curl http://localhost:3000
我看到“好”。
当我尝试
telnet localhost
我懂了
Trying 127.0.0.1...Connected to localhost.Escape character is ’^]’
但是当我尝试
netstat -na | grep :3000
我懂了
tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN
问题是:为什么它监听所有接口而不是仅监听本地主机?
该操作系统是没有任何哨声的linux mint 17。