Réponses:
Vous devez d’abord déterminer l’adresse IP ou le nom de la machine sur laquelle vous exécutez le serveur Web. Je suppose que vous utilisez le serveur Web sur un Mac puisque vous avez balisé votre message alors que macosx
les instructions sont similaires pour les machines Linux. Alors, sur ton mac:
Terminal.app
. C'est sous Applications->Utilities
.ifconfig
dans le terminal. Cela vous montre toutes les interfaces réseau sur la machine. L'un d'eux est le réseau auquel votre machine est activement connectée. Si vous mac est sur une connexion filaire qui devrait être en0
. Prenez note de l'adresse après inet
. Cette adresse doit être celle utilisée par votre appareil.
nc -v 192.168.10.1 3000
.
Connection to 192.168.10.1 3000 port [tcp/http] succeeded!
.ctrl-C
pour quitter la session nc.Si vous ne parvenez pas à vous connecter à votre application à l'adresse réelle du serveur, cela signifie que votre application n'écoute pas cette adresse. Vous devrez étudier comment modifier la configuration de votre application pour modifier ce comportement. Étant donné que je ne sais pas quelle application vous utilisez, je ne peux offrir aucune bonne idée à ce sujet.
Recherchez le nom de votre Mac en utilisant hostname
(à l'invite du terminal) et utilisez-le dans votre URL. Par exemple, http: //Tonys-iMac.local: 3000 /
Si, pour une raison quelconque, Bonjour ne fonctionne pas dans votre environnement, recherchez l'adresse de l'aéroport sur un iMac ou un MacBook avec
ipconfig getifaddr en1
ou en général avec
ipconfig getifaddr $(route -n get default|awk '/interface/ { print $2 }')
En gros, à partir des paramètres du pare-feu, vous pouvez autoriser une application donnée (par exemple, ruby) à accepter les connexions entrantes. De plus, pour permettre l’accès au monde extérieur (par exemple, www), vous devrez transférer le trafic sur votre passerelle interne: port via les paramètres de votre routeur.
Voici comment faire ceci:
Ouvrez un port sur le routeur (via 192.168.1.1) pour transférer le trafic de your_web_ip: port vers une passerelle local: port
Terminé. Maintenant, à partir de l’ordinateur distant, ouvrez votre navigateur avec votre adresse IP web (recherchez via http://www.whatismyip.com/ ) + le numéro de port de destination ci-dessus, par exemple 72.189.194.65:3280, ce qui permettra de vous connecter à votre 192.168.1.4 local. : 3000
Remarque: j'utilise Mac OSX 10.7.5.
127.0.0.1 est l'adresse locale que chaque ordinateur possède pour lui-même. Vous devez connaître la véritable adresse IP (ou le nom d'hôte / Bonjour) de la machine. Accédez aux Préférences Système, Réseau et recherchez l'adresse IP de la machine, que ce soit pour le port Ethernet si vous utilisez un câble ou pour l'aéroport si vous utilisez le WLAN. Ouvrez ensuite cette adresse avec la partie: 3000 dans Safari sur iPhone.
Si l'application écoute uniquement sur 127.0.0.1:3000, vous ne pourrez pas y accéder depuis un autre ordinateur. Pour ce faire, vous devez modifier la configuration sur Listen the IP ou 0.0.0.0 (toutes les interfaces disponibles) .Cette option 1.
La deuxième option consiste à utiliser un proxy.
La troisième option est que si vous pouvez utiliser SSH depuis l'iPhone, vous pouvez également utiliser le transfert SSH.
utilisateur ssh @ hôte -L 3000: 127.0.0.1: 3000
Puis sur ton iphone ouvert 127.0.0.1:3000
0.0.0.0
! Comment pourrais-je ne pas penser à ça?
Avez-vous essayé cela, cela a fonctionné pour moi (je ne suis pas affilié à cela):
rails server -b 0.0.0.0
, puis naviguez sur ceci sur votre iPhone.