Hat Hosts-Datei auf dem iPhone gibt es? Wie es zu ändern? [geschlossen]
-
19-09-2019 - |
Frage
Ich entwickle eine Anwendung, die auf den Server abzufragen. In meinem Mac, benutze ich die Host-Datei die dns zu ändern, um einen lokalen Server in meinem lokalen Netzwerk zu zeigen.
Jetzt muß ich es mit meinem iPhone testen, das Problem ist, dass mein iPhone nicht, dass der Server nicht erkennt aufgrund der fehlenden Konfiguration für dns.
Auf meinem Mac oder Windows, habe ich einfach hinzufügen. 192.168.0.20 http://www.google.com
an die Hosts-Datei
Nun, wie lasse ich mein iPhone die URL wissen: http://www.google.com
Lösung
Dies ist nicht direkt Ihre Frage beantworten, aber es Ihr Problem nicht löst ...
Was von Router zu machen haben Sie? Die Router-Firmware können Sie erlauben, DNS-Einträge für das lokale Netzwerk zu setzen. Dies ist, was ich mit der Tomato Firmware
Andere Tipps
hier andere Möglichkeit ist, haben Sie Ihr iPhone über einen Proxy verbinden. Hier ist ein Beispiel dafür, wie es mit Fiddler zu tun (es ist sehr leicht):
http://conceptdev.blogspot.com/ 2009/01 / Monitoring-iphone-web-Verkehr-with.html
In diesem Fall jede DNS-Lookups wird Ihr iPhone die Hosts-Datei der Maschine nicht verwendet Fiddler on läuft. Hinweis , aber, dass Sie einen Namen verwenden, der per DNS aufgelöst werden. example.local
, zum Beispiel, wird nicht funktionieren. example.xyz
oder example.dev
Willen.
Nicht Programmierung ähnliche, aber ich werde auf jeden Fall antworten. Es ist in /etc/hosts
.
Sie können es mit einem einfachen Texteditor verändern wie nano
.
(Natürlich müssen Sie einen jailbroken iPhone für diesen)
ich mein iPhone gerade bearbeitete Datei hosts erfolgreich (auf jailbroken iOS 4.0).
- Installierte OpenSSH auf iPhone via Cydia
- Mit einem SFTP-Client wie FileZilla auf mein Computer, mich mit meinem iPhone
- Adresse: [Telefons IP-Adresse oder einen Hostnamen, zum Beispiel verwenden.
simophone.local
] - Benutzername:
root
- Kennwort:
alpine
- Adresse: [Telefons IP-Adresse oder einen Hostnamen, zum Beispiel verwenden.
- liegt die
/etc/hosts
Datei - Made a Sicherung auf meinem Computer (im Fall, dass ich später meine Änderungen rückgängig machen)
- Edited die Hosts-Datei in einem anständigen Texteditor (wie Notepad ++ ). Siehe hier für eine Erklärung der Hosts-Datei.
- Geladene die Änderungen , überschreiben die Gastgeber auf dem iPhone-Datei
Das Telefon funktioniert Cache einige Webseiten und DNS-Abfragen, so einen Neustart oder dem Löschen des Cache kann helfen. Hoffe, das hilft jemand.
Simon.
Es existieren könnte, aber man kann es nicht auf einem Nicht-jailbreaked iPhone ändern.
Unter der Annahme, dass Ihre Entwicklung Webserver auf einem Mac ist, warum Sie nicht einfach verwenden seinen Bonjour-Namen (zum Beispiel MyMac.local.
) anstelle von myrealwebserverontheinternet.com
?
Falls jemand anderes auf dieser Seite fällt, können Sie auch dieses Problem lösen, indem Sie die IP-Adresse in der URL-Anforderung statt der Domäne mit:
NSURL *myURL = [NSURL URLWithString:@"http://10.0.0.2/mypage.php"];
Dann geben Sie den Host manuell:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:myURL];
[request setAllHTTPHeaderFields:[NSDictionary dictionaryWithObjectAndKeys:@"myserver",@"Host"]];
Was der Server betrifft, so wird es genau die gleiche Art und Weise verhalten, als ob Sie http://myserver/mypage.php
benutzt hatten, mit der Ausnahme, dass das iPhone muss nicht ein DNS-Lookup tun.
100% öffentliche API.
Sie den DNS am Telefon nicht ändern. Stattdessen mit Wi-Fi mit dem lokalen Netzwerk verbinden und Sie sind alle gesetzt.
In meinem Büro haben wir interne Server mit internen DNS, die nicht mit dem Internet ausgesetzt ist. Ich verbinde nur mit iPhone ins Büro WiFi und kann sie dann fein zugreifen zu können.
YMMV, sondern das Telefon DNS konfiguriert, fühlt es mir, dass nur lokale interne DNS-Einrichtung und Wi-Fi ist eine sauberere und einfachere Lösung.
Nein, eine iPhone-Anwendung kann nur Sachen ändern innerhalb seiner eigenen kleinen Sandkasten. (Und auch dort gibt es Dinge, die Sie nicht im laufenden Betrieb geändert werden.)
Ihre beste Wette ist wahrscheinlich die Server-IP-Adresse zu verwenden, anstatt die Hostnamen. Etwas härter, aber nicht , die hart, wenn Sie nur eine einzelne Adresse lösen müssen, wäre es, einen DNS-Server auf dem Mac zu setzen und konfigurieren Sie Ihr iPhone, das zu verwenden.