【发布时间】:2022-03-14 19:03:27
【问题描述】:
我创建了一个 EC2 实例。在上面安装了 Python 3.4,然后在上面安装了 Django 1.10.6。我正在尝试开发我的第一个 django 应用程序
我启动了 django 服务器。
python manage.py runserver
我无法通过http://n.n.n.n:8000 访问。 我收到 ERR_CONNECTION_REFUSED 错误。
我返回 EC2 实例并将协议/端口添加到安全组。这是我添加端口/协议后的样子
Custom TCP Rule TCP 8000 0.0.0.0/0
Custom TCP Rule TCP 8000 ::/0
它没有工作。我什至添加了一条规则,允许来自任何地方的所有流量。还是不行。
但是,如果我按以下方式启动 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/settings.py,
ALLOWED_HOSTS = ['n.n.n.n'] #Make sure your host IP is a string
我收到 ERR_CONNECTION_REFUSED 错误
我可以 ping 通 IP。我可以 ssh(有规则允许 ssh)。好像没有防火墙。
$ sudo service iptables status
iptables: Firewall is not running.
为什么我无法访问 http/django 服务器?
谢谢
【问题讨论】:
标签: python django security amazon-web-services amazon-ec2