如何使Django的devserver公开?一般有可能吗?
我目前正在尝试Django框架,我将与同事/朋友分享/展示/展示我所做的一些事情。我通过VMware在Win7下的Ubuntu中工作。因此,我希望/希望将当前带有端口的pub-
IP(例如http://123.123.123.123:8181/django-
app/)发送给我的朋友,以便他们进行测试。
问题是-我使用Django的开发服务器(python /path-to-django-app/manage.py runserver $ IP:$
PORT)。
如何公开开发服务器?
编辑:
哦,有件事我忘了提。令我难过的是,我将VMware与Ubuntu结合使用。我有一个shellscript,可将我当前的int-IP
192.168.xx.xx返回给我,并将其保存在环境变量($ CUR_IP)中。因此,每次我想运行django的devserver时,我只需执行
python /path-to-django-site/manage.py runserver $CUR_IP:8080
这样,我可以成为一个http地址(例如http://192.168.40.145:8080/app-
name/),可以在我的虚拟机之外使用它。我可以在主机(win7)机器上对其进行测试。这实际上就是我问这个问题的原因。我认为有一种使用ext-
IP并使Runserver在外部可用的方法
-
192.168.*.*
是LAN专用地址-
完成正确的VMWare(或其他VM管理器)和防火墙措施后,可以从LAN进行访问,但仍然无法从LAN外部(即,从Internet)访问它总的来说(这也是一件好事,因为此类开发服务器
不是 为安全性和可伸缩性 而 设计的)。为了使具有LAN专用IP的机器的某些端口对整个Internet都可见,您需要具有“虚拟服务器”功能的路由器(许多路由器,甚至便宜的路由器都可以提供),但是要具体启用它是不可能的。因为每个品牌都有自己独特的方式)。我还建议使用dyndns或其他类似的服务,以将稳定的DNS名称与您经常变化的公共IP相关联(当然,除非您从连接提供商那里大量获取静态IP,但后一种选择一直变得越来越昂贵)
)。superuser.com或serverfault.com可能会提供更好的答案和详细信息(一旦您在问题中提供配置的每一个小细节),因为该问题与软件开发无关,与服务器管理和配置无关。