如何从外部访问我的Django服务器?

时间:2014-08-07 08:42:09

标签: django

我的电脑已连接到我们学院的本地网络。我可以从另一台计算机访问同一网络中的django服务器。当我尝试从外部互联网连接做同样的事情时,我得到一个"找不到网页错误" 。我使用Whatsmyip.com提供的ip从外部访问它。另外,我使用以下命令启动服务器:python manage.py runserver 0:8000

3 个答案:

答案 0 :(得分:2)

使用类似:

这些会创建一个到您的localhost的隧道。您无法通过内部网络共享的公共IP进行托管。在此处阅读有关localhost的更多信息:http://en.wikipedia.org/wiki/Localhost

请注意,上述工具允许您共享指向您网站的链接,主要用于开发和测试。如果您真的想要托管Django服务器,可以在外部服务器上进行,也可以联系大学的基础架构团队,看看他们是否允许这样做。

对于外部托管,Heroku(https://www.heroku.com)可以是一个合理的免费计划的好选择。

答案 1 :(得分:1)

这取决于您的大学网络。通常,本地网络中的计算机位于NAT后面(几个客户端的单个外部IP)。此时,请求无法从外部路由到内部。也许大学技术人员可以帮助您路由您的页面。

答案 2 :(得分:0)

我认为首先要注意的是manage.py runserver用于本地开发。它不适合用于部署。

如果您想从"外部"访问您的网站,您应该考虑部署它。然后,您可以在此处详细了解:https://docs.djangoproject.com/en/1.6/howto/deployment/wsgi/

此外,如其他答案中所述,根据您的大学网络的配置方式,可能无法从外部访问您的开发服务器,因为:

  • 它可能具有本地网络的NAT规则
  • 可能存在端口限制和外部访问防火墙(通常大学网络从内部和外部都是非常严格的限制)