我们有一台服务器,我们正在其上运行 Django 支持的站点。由于我们要测试站点,因此我们使用 Django 的内置开发服务器(即 runserver
)。但是我很好奇下面命令的ip:
python manage.py runserver 0.0.0.0:80
它会生成一个正在运行的站点,我们可以使用服务器的 ip 远程访问它。
但是当使用 127.0.0.1
代替时:
python manage.py runserver 127.0.0.1:80
任何人都不能从另一台电脑上使用服务器的 ip 访问该站点。
那为什么呢? 0.0.0.0
到底是什么意思(谷歌说这是默认路由)?为什么不能远程访问127.0.0.1:80
?
最佳答案
0.0.0.0:80
是一个快捷方式,意思是“绑定(bind)到这台计算机支持的所有 IP 地址”。 127.0.0.1:80
使其仅绑定(bind)到“lo”或“loopback”接口(interface)。如果你只有一个NIC只有一个 IP 地址,您可以使用 192.168.1.1:80
明确绑定(bind)到它(如果 192.168.1.1
是您的 IP 地址),或者您可以列出您的计算机响应的所有 IP,但 0.0.0.0:80
是它的快捷方式。
关于django - 关于 Django 中的 IP 0.0.0.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1621457/