无法访问EC2实例上的Django服务器

2024-03-28 12:40:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了一个EC2实例。在上面安装了Python3.4,然后在上面安装了Django 1.10.6。我正试图开发我的第一个django应用程序

我启动了django服务器。

python manage.py runserver

我无法访问http://n.n.n.n:8000。 我收到一个错误连接拒绝错误。

我回到EC2实例并将协议/端口添加到安全组。这是我添加端口/proptocol后的样子

^{pr2}$

它不起作用。我甚至添加了一条规则,允许任何地方的所有流量。但还是没用。

但是,如果我按照以下方式启动django服务器

python manage.py runserver 0.0.0.0:8000

我得到以下错误:

DisallowedHost at /
Invalid HTTP_HOST header: 'n.n.n.n:8000'. You may need to add 'n.n.n.n' to ALLOWED_HOSTS.

如果尝试将IP添加到ProjectName/设置.py你说

ALLOWED_HOSTS = ['n.n.n.n'] #Make sure your host IP is a string

我收到错误连接拒绝错误

我可以ping IP。我可以ssh(有允许ssh的规则)。看起来没有防火墙。

$ sudo service iptables status
iptables: Firewall is not running.

为什么我不能访问http/django服务器?

谢谢


Tags: todjango实例端口pyip服务器http
1条回答
网友
1楼 · 发布于 2024-03-28 12:40:25

实际上,当我将主机添加到ProjectName时,我一定没有正确启动服务器/设置.py文件。我又试了一次,这次成功了。在

看起来像

django服务器在EC2实例上启动

python manage.py runserver

可能无法从其他计算机访问。在

django服务器从以下内容开始

^{pr2}$

如果主机的IP地址添加到ProjectName中允许的主机上,则可以从Internet访问/设置.py文件

ALLOWED_HOSTS = ['n.n.n.n'] #Make sure your host IP is a string

这是除了安全组中的条目之外的所有内容

相关问题 更多 >