关于Django中的IP 0.0.0.0

Zhu*_*Tao 44 django ip

我们有一台服务器,我们正在运行一个Django支持的站点.由于我们想测试网站,我们正在使用Django的内置开发服务器(即runserver).但是我对以下命令的ip感到好奇:

python manage.py runserver 0.0.0.0:80
Run Code Online (Sandbox Code Playgroud)

它导致我们可以使用服务器的远程IP访问的运行站点.
但是当使用时127.0.0.1:

python manage.py runserver 127.0.0.1:80
Run Code Online (Sandbox Code Playgroud)

没有人可以从另一台PC上使用服务器的ip访问该站点.

所以为什么?0.0.0.0究竟意味着什么(Google称这是默认路线)?为什么无法127.0.0.1:80远程访问?

Pau*_*lin 56

0.0.0.0:80是一种快捷方式,意思是"绑定到此计算机支持的所有IP地址".127.0.0.1:80使其仅绑定到"lo"或"loopback"接口.如果您只有一个只有一个IP地址的NIC,您可以明确地绑定它192.168.1.1:80(例如,如果192.168.1.1是您的IP地址),或者您可以列出您的计算机响应的所有IP,但这0.0.0.0:80是一个快捷方式.


Bri*_*ell 10

127.0.0.1是loopback接口,也称为localhost; 这是一个只能从同一台计算机访问的地址,因为实际上并没有通过网络.0.0.0.0表示"侦听所有接口",因此将侦听机器具有的所有IP地址(可能只有一个)的连接.