Rails 应用程序对本地网络不可见

Rails application not visible to local network

升级到 OSX Yosemite 后,我第一次需要从同一网络上的另一台机器上 运行ning 查看我机器上的应用程序。以前,这就像找到我的内部 IP 地址并将其与端口 3000 一起使用一样简单,例如。 http://192.168.0.111:3000.

但是,我现在发现 Yosemite 这不起作用。该应用程序肯定是 运行ning 并且可以通过 localhost:3000 使用,但不能通过我的内部 IP 使用。

我有 运行 网络实用程序端口扫描器,它显示本地主机公开了端口 3000,但我的 IP 没有。网络上其他尚未升级的机器(10.7.5 和 10.9.5)没有这个问题。

如有任何帮助,我们将不胜感激。

编辑:根据系统首选项的安全和隐私窗格,Yosemite 防火墙当前处于关闭状态 - 因此这不会导致问题。

默认情况下,rails server 将只接受来自本地主机的连接。您可以通过查看控制台输出来检查这一点:

Listening on localhost:3000, CTRL+C to stop

要侦听所有地址,这将允许您从本地网络上的其他机器进行连接,您必须明确绑定到一个更宽松的地址。试试这个:

rails server --binding=0.0.0.0

您现在应该看到:

Listening on 0.0.0.0:3000, CTRL+C to stop

现在您可以从本地网络的其他位置连接到您的 Rails 应用程序,方法是浏览至例如http://192.168.0.111:3000.