127.0.0.1与0.0.0.0
虽然这个问题非常简单,但实际部署的时候经常会搞错,写下来常看常新。
在部署服务器应用时,将 host 设置为 127.0.0.1 表示 只允许本机访问,也就是说:
只有运行这个服务的那台服务器自己可以访问(例如通过 localhost 或 127.0.0.1);
外部设备(即外网或局域网内其他设备)无法访问这个服务。
这在本地测试的时候也可以直接设置为空或者*或者0.0.0.0,防止上了服务器忘记更改,检查了防火墙之类的都没问题还访问不到就有够折腾的了。除了内部服务 ,如果要向外提供/暴露访问入口,除了开放端口,也得注意地址不能是localhost
127.0.0.1 是 回环地址(Loopback address),只作用于本地;
外部请求(即使你知道 IP 或端口)无法通过网络访问 127.0.0.1 上绑定的服务;
外部访问时,其实访问的是服务器的公网 IP 或内网 IP,而不是 127.0.0.1,所以访问不到。
如果希望让外网或局域网其他设备访问,你可以将 host 设置为:
0.0.0.0 —— 表示绑定所有可用的网络接口,包括公网、内网、本地;
或者绑定具体的公网/内网 IP(如 192.168.1.100 或云服务器的公网 IP);