在本地WiFi网络上提供Django项目

时间:2011-09-24 20:49:36

标签: python django

我用过

python manage runserver 0.0.0.0:8000

启动服务器以便我可以从我的wifi网络上的其他计算机访问该项目,但是当我在另一台计算机上浏览到internet-ipaddress:8000时,项目无法加载。我错过了一个设置吗?

6 个答案:

答案 0 :(得分:8)

假设所有机器都可以看到彼此...

获取运行runserver的计算机的IP地址。例如,在控制台上运行ifconfig

ifconfig

eth0      Link encap:Ethernet  HWaddr 10:1e:72:b8:2a:4b  
              inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
              ...

检查您是否正在运行防火墙。例如

sudo ufw status

如果处于活动状态,则需要打开端口8000,然后再次在控制台上运行

sudo ufw allow 8000/tcp

然后启动runserver(如果使用django-extensions则启动runserver_plus)

python manage.py runserver_plus 192.168.1.2:8000

在另一台计算机上打开浏览器

http://192.168.1.2:8000/admin

答案 1 :(得分:6)

internet-ipaddress你是什么意思?这听起来像是在使用路由器的外部IP。您应该使用您所服务的特定计算机的IP,这将是192.168.0.2之类的内部地址。

答案 2 :(得分:5)

您应该将其绑定到本地IP地址。例如

python manage.py runserver 192.168.1.100:8000

答案 3 :(得分:2)

您应该查看Pagekite Show Off 等解决方案,因为它们通常很容易设置并提供很大的灵活性(和移动性)并提供本地主机服务器的稳定域名。

答案 4 :(得分:0)

将192.168.0.8(或任何路由器IP)作为字符串添加到设置中的ALLOWED_HOSTS列表然后使用python manage.py runserver运行服务器192.168.0.8:8000

答案 5 :(得分:0)

  

注意:192.168.2.5是我的ip。所以,给你自己的

打开settings.py并将其添加到ALLOWED_HOSTS

useCursorFetch=true

然后运行命令

ALLOWED_HOSTS = ['192.168.2.5']

允许访问防火墙的警告。

现在从同一网络上的系统访问您的主机。