Meine Webserver-Software ist Nginx, die auf MacBook Air mit Mac OS X 10.7.5 sehr gut läuft
Wenn ich auf meinem MacBook Air zu http: //myapp.localhost gehe, kann ich perfekt auf meine Website zugreifen, die auf localhost ausgeführt wird.
Wie kann ich von meinem iPad aus auf die Website zugreifen? Ich frage, weil ich testen möchte, ob meine Website dem Tablet den Zugriff auf Desktop-Browser genauso gut ermöglicht.
Ich habe zwei mögliche Setups.
1) MacBook Air mit HUAWEI-MOBILEModem und Verwendung von INTERNET SHARING, um dem iPad den Zugriff zu ermöglichen.
2) wenn sowohl das MacBook Air als auch das iPad auf dieselbe WIFI-Verbindung zugreifen.
Bitte geben Sie Lösungen für beide Szenarien an.
UPDATE: Ich habe mehr als 1 App auf meinem MacBook Air Nginx Webserver.
Nennen wir sie für Bequemlichkeiten
usw.
Wie kann mein iPad auf die richtige Webanwendung zugreifen, die auf meinem MacBook Air gehostet wird?
AKTUALISIEREN
Auf meinem MacBook Air greife ich auf verschiedene Webanwendungen zu, weil ich meine Datei / etc / hosts bearbeitet habe.
Antworten:
In beiden Szenarien erhalten Sie bei Verwendung der IP- oder Maschinennamen-Lokaladresse des Mac nur die Standardwebsite auf diesem Mac. Ihre Web-Apps befinden sich alle auf der obersten Ebene, sodass Nginx in der Anforderung unterschiedliche Hostnamen erwartet. Das Problem ist, dass diese Hostnamen auf .localhost enden, das nicht von DNS aufgelöst wird, sodass das iPad nicht weiß, wo sich myapp2.localhost befindet, und die Anforderung Nginx auf dem Mac nie erreicht.
Sie haben dieses Problem bereits beim Testen vom Mac aus umgangen. Vielleicht haben Sie die Datei / etc / hosts bearbeitet oder haben eine GUI, die das macht? Sie können die iPad-Hosts-Datei jedoch nicht ohne Jailbreak ändern.
Eine einfache Problemumgehung besteht darin, die Standardwebsite in Nginx in die Webanwendung zu ändern, die Sie vom iPad aus testen möchten. Anschließend können Sie die Adresse machinename.local vom iPad aus verwenden. Sie müssen dies jedoch jedes Mal ändern, wenn Sie eine andere Webanwendung testen möchten.
Kompliziertere Problemumgehungen wären: a) Konfigurieren von Apache auf dem Mac als Proxyserver und Konfigurieren des iPad-Browsers, um diesen als Proxy zu verwenden; b) Richten Sie einen DNS-Server in Ihrem lokalen Netzwerk ein. c) Verwenden Sie stattdessen den iPad-Simulator auf dem Mac, während Sie die Datei / etc / hosts ändern. oder d) das iPad jailbreaken und / etc / hosts ändern.
quelle
localhost
ist gerätespezifisch. Wenn Sie es also auf Ihrem iPad besuchen, gelangen Sie zu einer Seite auf Ihrem iPad selbst (die wahrscheinlich nicht vorhanden ist).Verwenden Sie stattdessen die lokale IP-Adresse des Mac, um von Ihrem iPad aus auf eine Seite zuzugreifen, die von Ihrem Mac aus bereitgestellt wird
localhost
. Öffnen Sie den Netzwerkbereich der Systemeinstellungen, um die lokale IP Ihres Mac abzurufen. Wählen Sie links Ihr aktives Netzwerk aus und die IP wird rechts unter der Überschrift Verbunden angezeigt . Es wird wahrscheinlich etwas sein, das aussieht wie10.0.1.1
oder127.0.1.1
.quelle
computerName.local
. Siehe diese Antwort . Mehrere Apps ändern die Antwort nicht. Tun Sie einfach das, was Sie normalerweise tun, und ersetzen Sie sielocalhost
durch die IP. Also, wenn Sie in der Regel gehenhttp://localhost:8888/someApp/index.html
, gehen Sie zu ,http://IPAddress:8888/someApp/index.html
woIPAddress
die lokale IP.Sie können versuchen, den Hostnamen Ihres Mac gefolgt von einem .local einzugeben.
Also, wenn der Name Ihres Computers epsilon ist.
Wie von Nathan angegeben, würde die IP-Adresse funktionieren. Ersetzen Sie meine Beispiel-IP durch Ihre tatsächliche IP.
Sie würden Ihre spezifischen App-Informationen am Ende dieser Adressen hinzufügen. Was auch immer nach dem http: // localhost kommt , wird an das Ende dieser URLs angehängt.
quelle
Ich denke, das Einfachste ist, die IP-Adresse des Hosts zu erhalten. Führen Sie beispielsweise in der Befehlszeile Folgendes aus:
Sie erhalten Ihre externen IP-Adressen {unten als $ IP_ADDRESS beschrieben}.
Zeigen Sie dann auf Ihrem iPad einfach mit dem Browser auf diese IP-Adresse:
quelle
Aktivieren Sie die Webfreigabe:
Stellen Sie Ihre Website hinein
~/Sites
quelle