从其他计算机访问Django应用程序

时间:2014-08-28 13:33:35

标签: python django webserver localhost

我正在Django的本地计算机上开发一个Web应用程序。

现在我希望我的网络上的其他计算机可以访问我的webapp。我们有一个共同的网络驱动器" F:/"。我应该把我的文件放在这个驱动器上,还是我可以写一些类似" python manage.py runserver test_my_app:8000"在命令提示符下,让网络中的其他计算机通过编写" test_my_app:8000"在浏览器地址栏中?我是否必须打开任何端口,我该怎么做?

6 个答案:

答案 0 :(得分:7)

应该使用中央系统或服务器来完成。

默认情况下manage.py runserver不会授予ip绑定权限。所以

  

请注意,无法从网络上的其他计算机访问默认IP地址127.0.0.1。要使您的开发服务器可以在网络上的其他计算机上查看,请使用自己的IP地址(例如192.168.2.1)或0.0.0.0或::(启用IPv6)。

如果您想签入本地机器,请按照

  

python manage.py runserver 0.0.0.0:8000

现在转到您的网络计算机并访问您的IP,如192.168.1.24:8000

<强>更新

对于Django版本大约1.10,您应该将您的主机添加到ALLOWED_HOSTS here

答案 1 :(得分:0)

使用IP地址运行应用程序,然后在其他计算机上访问它。

python manage.py runserver 192.168.56.22:1234

这两台机器应该在同一个网络中,然后才能使用它。

答案 2 :(得分:0)

只需将您自己的IP地址添加到ALLOWED_HOSTS

ALLOWED_HOSTS = ['192.168.1.50','127.0.0.1','localhost']

并运行服务器python manage.py runserver 192.168.1.50:8000

并将您自己的服务器访问网络中的其他计算机

答案 3 :(得分:0)

这可以通过4个步骤完成:

  1. 确保在settings.py中:ALLOWED_HOSTS = ['*']
  2. 使用以下命令运行服务器:python manage.py runserver 0.0.0.0:3000
  3. 转到Windows安全->防火墙和网络保护,然后完全关闭Windows防火墙。

现在,您可以使用以下URL在本地网络中访问Django API: http:// Your-LAN-IP-address:3000 /

  1. 现在我们必须打开端口3000。转到http://192.168.1.1并登录到您的路由器。现在转到“高级”选项卡-> NAT->虚拟服务器,并单独填写以下字段:
  • WAN端口-3000
  • LAN端口-3000
  • LAN IP地址-检查您的机器

现在,您可以使用URL从任何地方访问您的Django API: http://您的公共IP地址:3000 /

答案 4 :(得分:0)

检查你电脑的IP地址
这些命令会告诉你所有的网络信息

ip add

ifconfig -a

如果你说它只给你 127.0.0.1 那么有两个选择:

  1. 您的网卡未连接或系统无法识别

  2. 您的网络 DHCP 服务器未运行或未连接

在那之后 将您的 IP 地址添加到您项目的 setting.py 文件中
就我而言,我的 IP 是 192.168.1.24

ALLOWED_HOSTS = ['192.168.1.24', '127.0.0.1', 'localhost']

然后使用

运行您的项目
python manage.py runserver 192.168.1.24:8000

现在您可以在其他设备上访问您的项目:)

答案 5 :(得分:0)

这个非常非常简单

python manage.py runserver 0.0.0.0:8000

setting.py 中的变化

ALLOWED_HOSTS = ['*']

打开linux终端

sudo ifconfig

获取inet ipv4地址 在其他相同的本地网络 PC 上运行

相关问题