【问题标题】:Can't access my nodeJS web app hosted on AWS EC2 through browser无法通过浏览器访问托管在 AWS EC2 上的我的 nodeJS Web 应用程序
【发布时间】:2019-07-30 20:27:15
【问题描述】:

我在 AWS ec2 实例上托管了一个 nodeJS 应用程序,我可以通过 ssh 但不能通过我的浏览器(即 http)访问它。

控制台上没有记录错误,它只在浏览器中显示以下消息:

“无法连接”

我了解安全组并检查了两次我已正确包含 http 和 https。请帮忙

【问题讨论】:

  • 能否附上您的入站(入口)配置?
  • 请检查我是否已添加。
  • 你能发布你的 NodeJS 代码吗?你在哪个端口监听?另外,您可以尝试卷曲吗?
  • 这是一个巨大的代码,所以我无法真正分享我在 4000 上收听的代码我会尝试 curl 并更新你
  • 还要检查您是否修改了正确的安全组,应该附加您的 EC2 实例

标签: node.js amazon-web-services amazon-ec2 deployment keystonejs


【解决方案1】:

您是否配置了 Web 服务器以将请求从 AWS URL 定向到您正在运行的 nodejs 应用程序?

尝试检查 nginx (https://www.nginx.com/),它真的很容易和快速地配置。

这是一个最小的配置模板:

server {
  listen 80;
  server_name <aws-url>;
  location / {
    proxy_pass 127.0.0.1:<node-port>;
  }
}

【讨论】:

  • 我是否需要在 nodeJS 服务器之上使用 ngnix。我看不出这有什么帮助?请解释一下
  • 如果你在80端口运行你的节点服务器就不需要它,但这是一个高权限端口,所以你只能以root身份运行你的应用程序,不推荐这样做.推荐的方式是使用 Web 服务器,例如 nginx,来创建一个代理传递给您的应用程序。
  • 非常感谢您解决了这个问题。我被困了这么久再次感谢。
猜你喜欢
  • 2021-10-09
  • 1970-01-01
  • 2016-08-25
  • 2018-06-24
  • 2017-03-22
  • 1970-01-01
  • 1970-01-01
  • 2013-02-14
  • 2012-10-28
相关资源
最近更新 更多