如何连接到远程主机上的 node.js(keystone) 应用程序? 0.0.0.0:3000

How do I connect to a node.js(keystone) app on a remote host? 0.0.0.0:3000

我想尝试一下 node.js,所以我启动了一个 Amazon ec2 微型实例。我设置了node和keystone,好像是运行:

------------------------------------------------
KeystoneJS Started:
My Project is ready on http://0.0.0.0:3000
------------------------------------------------

我尝试通过以下方式连接到我的应用程序:my-remote-ip-address:3000 但它总是超时。我对服务器端非常缺乏经验,我忘记了什么?

默认情况下,AWS 仅允许端口 80 上的传入 HTTP 请求 所以你对3000端口的请求会超时。

您有两个选择:

  1. 在AWS控制台打开3000端口 登录到 AWS 控制台 > 转到 EC2 实例 > 在最右边的安全组下单击该组以打开链接到该特定实例的组。 > 在 select 下面的选项卡中 inbound > edit > add rule > type - HTTP, port - 3000, IP - anywhere or you own > save

  2. 在您的 EC2 实例中,使用像 nginx 这样的服务器在内部将到达端口 80 的请求指向您的节点服务器 运行 上的端口,即 3000 所以你只需要到达 my-remote-ip-address 并且 nginx 将在内部重定向请求