我正在本地主机上运行我的Django项目,而且它运行得很好。为了测试目的,我想从另一台连接到同一网络的计算机上运行我的本地主机。
我已经执行了python manage.py runserver '我的IP地址'
这也运行得很好。是否有任何方法可以让我从连接到另一个网络的另一台计算机访问我的本地主机?
比如我连接到A网络并在运行我的本地主机,我的朋友连接到B网络。假设他想访问我的本地主机并查看我的项目运行情况,那么从另一台连接到另一个网络的计算机上访问另一台计算机的本地主机是否可能?
我正在本地主机上运行我的Django项目,而且它运行得很好。为了测试目的,我想从另一台连接到同一网络的计算机上运行我的本地主机。
我已经执行了python manage.py runserver '我的IP地址'
这也运行得很好。是否有任何方法可以让我从连接到另一个网络的另一台计算机访问我的本地主机?
比如我连接到A网络并在运行我的本地主机,我的朋友连接到B网络。假设他想访问我的本地主机并查看我的项目运行情况,那么从另一台连接到另一个网络的计算机上访问另一台计算机的本地主机是否可能?
你可以。只需在django runserver中运行
python manage.py runserver 0.0.0.0:8000
现在,您可以使用youripaddress:8000
访问您的应用程序。来自Django...
请注意,默认IP地址127.0.0.1无法从网络上的其他计算机访问。要使开发服务器对网络中的其他计算机可见,请使用其自己的IP地址(例如192.168.2.1)或0.0.0.0或::(启用IPv6)。
您可以提供用括号括起来的IPv6地址(例如[200a::1]:8000)。这将自动启用IPv6支持。
更新:
为了与问题标题匹配的答案,您需要配置路由器将端口80转发到您的应用程序地址。
使用本地主机或系统IP运行服务器,例如以下之一:
"Original Answer"翻译成中文是"最初的回答"
python manage.py runserver 192.168.6.7:8000
python manage.py runserver 0.0.0.0:8000
python manage.py runserver 127.0.0.1:8000
ALLOWED_HOSTS = ['127.0.0.1', 'localhost','192.168.6.7']
如果您在Django项目中使用DEBUG=True
模式,除此之外您不需要任何其他东西(我假设您没有使用端口80,因为它需要root访问权限)。
您必须使用0.0.0.0
作为主机IP,这是一个简单的解决方案。命令是:
python manage.py runserver 0.0.0.0:8000
。就这样。