Application Rails non visible sur le réseau local
Pour la première fois depuis la mise à niveau vers OSX Yosemite, j'ai besoin de voir une application en cours d'exécution sur ma machine à partir d'une autre machine sur le même réseau. Auparavant, c'était aussi simple que de trouver mon adresse IP interne et de l'utiliser avec le port 3000, par exemple. http://192.168.0.111:3000
.
Cependant, je constate maintenant qu'avec Yosemite cela ne fonctionne pas. L'application est définitivement en cours d'exécution et est disponible via localhost:3000
mais pas via mon adresse IP interne.
J'ai exécuté le scanner de port utilitaire réseau et cela montre que localhost expose le port 3000 mais mon IP ne le fait pas. D'autres machines sur le réseau qui n'ont pas encore mis à niveau (10.7.5 et 10.9.5) n'ont pas ce problème.
Toute aide serait grandement appréciée.
Edit: selon le volet Sécurité et confidentialité des préférences système, le pare - feu Yosemite est actuellement désactivé, ce qui ne cause pas le problème.
1 réponses
Par défaut, rails server
n'acceptera que les connexions de localhost. Vous pouvez vérifier cela en regardant la sortie de la console:
Listening on localhost:3000, CTRL+C to stop
Pour écouter sur toutes les adresses, ce qui vous permettra de vous connecter à partir d'autres machines du réseau local, vous devez vous lier explicitement à une adresse plus permissive. Essayez ceci:
rails server --binding=0.0.0.0
, Vous devriez maintenant voir:
Listening on 0.0.0.0:3000, CTRL+C to stop
Maintenant, vous pouvez vous connecter à votre application Rails d'ailleurs sur votre réseau local, en recherchant par exemple http://192.168.0.111:3000
.