如何使Django的devserver公开?一般有可能吗?

发布于 2021-01-29 17:49:23

我目前正在尝试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在外部可用的方法

关注者
0
被浏览
47
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    192.168.*.*是LAN专用地址-
    完成正确的VMWare(或其他VM管理器)和防火墙措施后,可以从LAN进行访问,但仍然无法从LAN外部(即,从Internet)访问它总的来说(这也是一件好事,因为此类开发服务器
    不是 为安全性和可伸缩性 设计的)。

    为了使具有LAN专用IP的机器的某些端口对整个Internet都可见,您需要具有“虚拟服务器”功能的路由器(许多路由器,甚至便宜的路由器都可以提供),但是要具体启用它是不可能的。因为每个品牌都有自己独特的方式)。我还建议使用dyndns或其他类似的服务,以将稳定的DNS名称与您经常变化的公共IP相关联(当然,除非您从连接提供商那里大量获取静态IP,但后一种选择一直变得越来越昂贵)
    )。

    superuser.com或serverfault.com可能会提供更好的答案和详细信息(一旦您在问题中提供配置的每一个小细节),因为该问题与软件开发无关,与服务器管理和配置无关。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看