如何设置节点项目到Linux服务器?
问题描述:
节点项目在localhost上运行完全正常,但无法在域上运行,请帮我解决这个问题。如何设置节点项目到Linux服务器?
app.listen(3000,'APP_PRIVATE_IP_ADDRESS' function(err,rslt){
if(err){
console.log(err);
}
else{
console.log("App Started on PORT 3000");
}
})
当我运行在终端打印它消息的节点server.js“应用开始于3000端口”,但是当我在网络上运行它显示了错误的网站无法到达。
答
尝试使用'0.0.0.0'符号IP,它表示绑定所有IP或任何IP。
app.listen(3000, '0.0.0.0', function(err, rslt){
if(err){
console.log(err);
}
else{
console.log("App Started on PORT 3000");
}
});
主机名是可选的,所以这是等价的:
app.listen(3000, function(err, rslt){
if(err){
console.log(err);
}
else{
console.log("App Started on PORT 3000");
}
});
在该情况下,要指定的IP版本,这两个使用作出区别。如果为hostname参数提供“0.0.0.0”值,则只会发生IPv4绑定,并且只会接受并侦听IPv4请求。如果未指定此参数,则会发生IPv6和IPv4绑定。
+0
其在本地工作但不在活动服务器上 – tanu
+0
然后,您的环境可能还有其他问题。您在哪个平台上托管应用程序? –
可能重复的[Node.js连接只适用于本地主机](https://stackoverflow.com/questions/14043926/node-js-connect-only-works-on-localhost) –
呃 - 你觉得也许该网站无法联系到?问:你可以ping通该地址吗?问:您的PC和可能阻塞该端点的节点应用程序(“端点”== IP地址+端口)之间是否存在路由器或防火墙?绑定到“0.0.0.0”是解决方案的一部分 - 但不一定是整个解决方案:( – paulsm4
您是否使用公共IP或域名访问它?如果使用域名将A记录与服务器IP映射? –