我已经创建了一个非常简单的 Node 应用程序,它在我的本地环境中完美运行。
应用正在监听端口 8000,例如:
var app = express();
// ... some codes in between ...
app.listen(8000);
在我的本地环境中,我可以像这样访问 Node 应用程序:
http://localhost:8000
但是,当我试图让它在我的 linode 服务器 (Ubuntu 10.04) 上运行时, 我无法通过以下方式访问 Node 应用程序:
http://mydomain.com:8000
我确信我已经准备好所有的 node_modules,因为当我这样做的时候
node app.js
它没有返回任何错误消息,看起来它正在运行。
我想可能是因为我为 http://mydomain.com 安装了 apache2 ,我应该进行某种代理设置,否则可能是一些我根本不知道的问题。我真的很无能,我在谷歌上找不到任何相关文档......我知道这之间肯定有很多我不明白的东西......请帮助我了解如何将node.js应用程序部署到服务器。非常感谢大家
最佳答案
听起来可能是防火墙问题。
您是否曾经在 creating a firewall 上关注过 Linode 指南? ?
如果是这样,那么您需要明确允许端口 8000:
-A INPUT -p tcp --dport 8000 -j ACCEPT
关于node.js - 使 node.js 应用程序在 ubuntu 服务器上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23262921/