2014-03-27 134 views
-1

我一直使用的开发服务器建立一个Django的网站,如果我在浏览器中使用以下地址访问它,它工作正常:Django的:外部访问

localhost:8000

我现在想能够从另一台计算机访问网站(在同一网络上)。我现在仍想使用开发服务器。如果我的电脑在网络上的名称是myname,而域名是mydomain.com,那我该如何启用它?如果我只需要输入:

myname.mydomain.com:8000 

我得到一个Server not found错误。

谢谢。

回答

3

无法按照您在LAN中解释的方式访问您的计算机。有几种方法可以让其他计算机直接使用您的开发服务器。

首先,运行你的Django应用程序是这样 -

$ ./manage.py runserver 0.0.0.0:8000 

所以服务器监听到所有的网络接口的任何人访问你的IP,而不仅仅是本地主机。然后 -

  1. 找出您的IP在网络中。在同一网络中的其他计算机上打开该hosts文件(在Linux中,它在/etc/hosts),并输入一个新的生产线 -

    enter.your.ip.here intended.domainname.com 
    

    然后你就可以在进入intended.domainname.com:8000enter.your.ip.here:8000从该计算机访问您的开发服务器浏览器。缺点:您必须在每台计算机上更改hosts文件,而您打算使用域名而不是IP,并且它们都必须位于同一网络中。您可以使用localtunnel。然后,你可以执行 -

    $ localtunnel 8000 
    

    而且它会给你喜欢http://xyz.localtunnel.com一个网址,你可以通过互联网分享给任何人,他们将能够使用您的开发服务器。

+0

此外,默认的runserver只侦听本地主机,所以要从另一台计算机获取它,您必须在runserver命令之后指定0.0.0.0:8000。 – Ben

+0

对。忘了提到这一点。谢谢 –