我还使用Vagrant。在Vagrantfile中设置了端口转发(8080 => 4000),因为我在Macintosh下安装了Jekyll并在Vagrant虚拟机中进行测试。如果使用默认设置(0.0.0.0:4000),它可以正常工作。我可以通过http://localhost:8080从我的safari访问它。但如果没有网络,我就无法绑定到0.0.0.0:4000。我使用jekyll server -H 127.0.0.1将服务绑定到127.0.0.1:4000,然后我无法通过http://localhost:8080访问它。
有人能解释一下0.0.0.0、127.0.0.1和localhost之间的区别吗?有人能解释一下为什么这种差异会导致这个问题吗?