首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nginx拒绝在亚马逊EC2上连接

问Nginx拒绝在亚马逊EC2上连接
EN

Stack Overflow用户
提问于 2018-09-27 23:37:25
回答 3查看 3.9K关注 0票数 0

我正在尝试使用nginx来设置一个简单的node.js服务器,我在后台的4000端口上运行服务器,我的nginx配置文件是

代码语言:javascript
复制
server {
  listen 80;
  listen [::]:80;
  server_name 52.53.196.173;
  location / {
    include /etc/nginx/proxy_params;
    proxy_pass http://127.0.0.1:4000;
  }
}

我将其保存在/etc/ nginx /sites-available中,并将其符号链接到启用了站点的站点,nginx.conf文件已经包含了include行,以便从启用站点的站点加载文件,然后我使用sudo service nginx重新启动了服务我尝试转到52.53.196.173,它拒绝连接,但是转到52.53.196.173:4000,端口4000它是有效的,但我试图使它侦听端口80与nginx,我尝试将我的.ml域名为server_name,但没有运气,我在域名服务器设置中有IP地址52.53.196.173作为A记录,我在亚马逊网络服务EC2实例Ubuntu Server16.04上做了这件事,我甚至尝试了完整的ec2公共域名地址,但没有成功,你有什么想法吗?

编辑:我通过直接将文件移动到启用站点而不是符号链接的方式解决了它

EN

回答 3

Stack Overflow用户

发布于 2018-09-27 23:47:50

可能发生的事情很少。首先,您需要验证nginx服务器是否正在端口80上运行和侦听。您可以使用以下命令检查监听端口。

代码语言:javascript
复制
netstat -tunlp

然后,您需要检查您的服务器防火墙&还有selinux策略。(或禁用selinux以进行测试)

然后,您需要验证配置为访问端口80上的http/https连接的AWS安全组。

PS :以下命令和配置的输出将有助于故障排除。

代码语言:javascript
复制
netstat -tunlp
sestatus
iptables -L

* AWS Security Group Rules
* Nginx configurations ( including main configuration if changed )

附注: OP通过将配置文件直接移动到站点启用的目录修复了该问题。也许,如果你有同样的问题,可以查看评论以获得更多信息。

票数 2
EN

Stack Overflow用户

发布于 2018-09-27 23:41:37

很可能端口80在您的安全组中没有打开,或者nginx没有运行来接受连接。请张贴nginx状态并查看安全组

票数 0
EN

Stack Overflow用户

发布于 2021-06-23 13:59:35

检查以下内容:

  1. 在安全组中,在入站部分添加Http (80)和Https (443),ip为0.0.0.0,如下:

对于80:

​

​

对于443:

​

​

  1. 在网络ACL中,允许http和https上的入站。出站设置自定义TCP角色如下:

入站角色:

​

​

出站角色:

​

​

  1. 在ec2实例上分配一个弹性ip,监听该ip是否为公网。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52540582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档