即使端口已打开,也无法在 Amazon EC2 上打开 Web 应用程序

即使端口已打开,也无法在 Amazon EC2 上打开 Web 应用程序

我有一个t1.micro具有公共 DNS 的实例,其内容类似于以下内容:

ec2-184-72-67-202.compute-1.amazonaws.com

(部分数字已更改)

在此实例中,我正在运行以下 Django 应用程序:

$ sudo python manage.py runserver --settings=vlists.settings.dev
Validating models...

0 errors found
Django version 1.4.1, using settings 'vlists.settings.dev'
Development server is running at http://127.0.0.1:8000/

port 8000我已经通过 AWS 控制台打开了

截屏

当我在 Chrome 中导航到以下 URL 时,收到以下消息Oops! Google Chrome could not connect to::

http://ec2-184-72-67-202.compute-1.amazonaws.com:8000

我究竟做错了什么?

网络状态:

netstat -lan | grep 8000
tcp        0      0 127.0.0.1:8000          0.0.0.0:*               LISTEN 

答案1

>Development server is running at http://127.0.0.1:8000/

听起来好像服务器设置为仅在本地主机上响应。
检查您的 Django 配置,并确保它设置为在所有接口上响应。

更新:

netstat -lan | grep 8000
tcp        0      0 127.0.0.1:8000          0.0.0.0:*               LISTEN 

是的,肯定是您的绑定存在问题。127.0.0.1 应该是您的公共 IP,或者所有接口的 0.0.0.0。

答案2

您需要将运行服务器绑定到所有端口。默认情况下,它只绑定到本地主机

 python manage.py runserver --settings=vlists.settings.dev 0.0.0.0:8000

相关内容