将Rails服务器绑定到0.0.0.0的内容是什么?

我使用“www.xip.io”作为DNS通配符在不同设备上进行测试。 我将主域名设置为我的IP地址。 我用bundle exec rails server启动了一个rails服务器,然后我去了www..xip.io:3000并注意我的rails服务器没有响应。

但是,如果我将我的rails服务器绑定到0.0.0.0,就像bundle exec rails server -b 0.0.0.0 ,它可以工作! 我不明白0.0.0.0告诉我的服务器这是什么工作。 有人能理解这个吗?

绑定到0.0.0.0告诉服务绑定到计算机上的所有IP地址 。 Rails服务器默认情况下用于执行此操作,但4.2已更改为仅绑定到localhost

基本上,如果它只绑定到localhost那么它只会本地响应localhost127.0.0.1 ,它无法通过DNS服务工作,因为它不是公共IP地址。

当您使用0.0.0.0 ,它将绑定到localhost 您的可路由IP地址。

我认为你需要在访客/虚拟机中使用绑定。