与AWS上运行的Web应用程序的连接被拒绝

时间:2017-10-12 17:57:53

标签: amazon-web-services ubuntu amazon-ec2

我有一个在端口8000上运行的webapp。所以我用命令启动它:

> smtweb 
Performing system checks...

System check identified no issues (0 silenced).
October 12, 2017 - 11:25:27
Django version 1.8.18, using settings None
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

然后我尝试通过我与正在运行的实例关联的公共弹性IP,按如下方式访问webapp:

http://34.XXX.XXX.XXX:8000/

(为了我自己的安全,我通过XXX省略了部分IP)

但是,Chrome会抛出以下错误:

34.XXX.XXX.XXX refused the connection.
ERR_CONNECTION_REFUSED

因此连接被拒绝,甚至很难将我的计算机与具有以下规则的安全组相关联:

Type: Custom TCP Rule
Protocol: TCP
Port Range: 8000
Source: 0.0.0.0/0

现在,我不确定是否必须在AWS Tools中配置更多内容。我似乎在那里做了一切。我问自己的是:

  • 该应用程序本身是否有一些限制?
  • 我有一个Ubuntu映像:我是否需要在那里调整更多的防火墙设置?

你知道我接下来会尝试什么吗?

1 个答案:

答案 0 :(得分:0)

ERR_CONNECTION_REFUSED表示没有打开端口,而不是端口被安全组规则阻止。 TCP / IP堆栈拒绝了连接请求。

仔细检查您是否为要分配EIP的接口配置了端口8000。

尝试使用本地IP地址和EIP的目标IP从同一台计算机访问您的应用。

如果本地IP有效且EIP没有,请检查您的网络配置。您的Web应用程序可能未绑定到分配给EIP的接口,并且可能仍配置为旧的公共IP地址或根本未配置。

如果两个IP地址都有效,则问题很可能不在于您的Web应用程序。查看在本地计算机上运行的iprules,防火墙等。