Приложение Rails не отображается в локальной сети
Впервые после обновления до OSX Yosemite мне нужно просмотреть приложение, запущенное на моем компьютере, с другого компьютера в той же сети. Раньше это было так же просто, как найти мой внутренний IP-адрес и использовать его с портом 3000, например. http://192.168.0.111:3000
.
Однако теперь я нахожу, что с Йосемитом это не работает. Приложение определенно работает и доступно через localhost:3000
, но не через мой внутренний IP.
Я запустил сканер сетевого сетевого порта, и он показывает, что localhost предоставляет порт 3000, но мой IP-адрес не работает. Другие машины в сети, которые еще не обновили (10.7.5 и 10.9.5), не имеют этой проблемы.
Любая помощь будет принята с благодарностью.
Изменить. В соответствии с областью безопасности и конфиденциальности системных настроек брандмауэр Yosemite в настоящий момент отключен - так что это не вызывает проблемы.
Ответы
Ответ 1
По умолчанию rails server
будет принимать соединения только с localhost. Вы можете проверить это, посмотрев на вывод консоли:
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
.