【发布时间】:2015-09-15 15:38:04
【问题描述】:
我正在运行一个 Django 开发服务器
python manage.py runserver 0.0.0.0:8000
它可以从本地机器完全访问,但不能从外部世界访问。 Windows 8.1、Python 3.4.3、Django 1.8.4。
我尝试了不同的端口(7500、50001)并在 Windows 防火墙中明确允许该端口(通过入站规则)。 我还在另一台机器(AWS EC2)上运行服务器,并允许那里的端口,结果相同。
Netstat 说程序正在监听指定的端口,所以理论上它应该可以工作。 我的机器也在 settings.py 的 ALLOWED HOSTS 列表中。
我知道开发服务器不够安全,无法用于生产,但我正在做一件短期的小事,不值得为正确部署而烦恼。那么,任何想法可能是什么问题?
【问题讨论】:
-
这与 Python 和 Django 无关。而不是您尝试通过网络访问您的机器的方式。
-
@MathiasEttinger,在浏览器中输入 IP:port。有没有更好的办法?
-
我更多的是考虑路由器参数。它是否会将对 your_ip:8000 的请求转发到运行服务器的计算机?自从it should work there 之后,我有点担心 EC2
-
是的,我也是这么想的,这就是我尝试 EC2 的原因。从您提到的答案中,我尝试了 telnet 并且它有效,因此很可能是连接问题。但是由于防火墙保持端口开放,安全组也保持开放,所以问题仍然存在。
标签: python django remote-access