📅  最后修改于: 2023-12-03 15:27:45.782000             🧑  作者: Mango
如果你使用 AWS EC2 作为你的服务器,可能会遇到一个常见的问题:节点应用在浏览器上不可见。这是由于 EC2 实例的默认安全组配置阻止了来自外部世界的流量。
在 EC2 控制台中,找到您的实例并单击“安全组”。
在”安全组”的页面中,单击“编辑”按钮。
将您的应用程序的端口添加到安全组的“入站规则”中。
如果您使用 Elastic Beanstalk 来部署您的应用程序,则可以配置 Beanstalk 来自动设置安全组规则。
在 Beanstalk 管理控制台中,找到您的环境并单击“配置”。
在“配置”页面中,单击“安全”选项卡。您可以选择从“实例配置”或“网络配置”选项卡中编辑安全组规则。
许多开发人员使用 Nginx 或 Apache 作为反向代理来部署他们的应用程序。如果您使用反向代理,您可以将请求路由到您的节点应用程序,从而绕过 EC2 安全组。
使用 Nginx 的示例:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:3000;
}
}
使用 Apache 的示例:
<VirtualHost *:80>
ServerName example.com
ProxyPreserveHost On
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
</VirtualHost>
节点应用在浏览器 AWS EC2 中不可见是由于 EC2 实例的默认安全组配置阻止了来自外部世界的流量。解决此问题的方法包括手动配置安全组,使用 Elastic Beanstalk 或使用 Nginx 或 Apache 作为反向代理。