Legen Sie manuell einen Hostnamen für die IP-Adresse fest (dh / etc / hosts äquiv.?)

10

Ich bin ein Webentwickler und entwickle unsere Website auf meinem lokalen Desktop-Computer. Ich habe ein Android-Handy (HTC-Wunsch läuft Android 2.2). Ich möchte testen, wie unsere Webanwendung auf Android aussieht. Ich kann eine Verbindung zu demselben WLAN-Netzwerk wie mein Desktop-Computer herstellen. In unserer Webanwendung werden jedoch mehrere fest codierte gefälschte Domainnamen verwendet. Auf meinem Ubuntu Linu7x Desktop - Rechner verwende ich /etc/hostsauf lokale IP - Adressen dieser Domain - Namen zu setzen.

Gibt es sowieso, um dies auf Android zu tun? Ich möchte, dass "foo.xyz" (unser Testdomänenname) auf 172.31.1.67 (mein interner Desktop-Computer) verweist. Gibt es eine Möglichkeit, dies zu tun, ohne das Telefon zu rooten (da mein Android-Handy jetzt nicht gerootet ist)?

Rory
quelle
Wie lösen Ihre anderen Computer diese IP in den Testdomänennamen auf? Wenn Sie es richtig machen und DNS intern in Ihrem Netzwerk verwenden und die IP / den Namen in DNS so aktualisieren, dass sie aufeinander verweisen, sollte Ihr Telefon, wenn es eine Verbindung zu Ihrem internen WLAN herstellt, Ihre internen DNS-Einstellungen übernehmen und einfach funktionieren .
GAThrawn
@GAThrawn Ich mache auch Webentwicklung (allerdings nicht speziell für mobile Geräte). In meiner Umgebung ist es normal, dass mehrere lokale Entwicklungsstandorte auf verschiedenen virtuellen Hosts konfiguriert sind und über / etc / hosts (oder Windows-Äquiv.) Eine Verbindung zu ihnen hergestellt werden. Da auf dem OP Linux ausgeführt wird, sollte es ziemlich einfach sein, einen Entwickler-DNS-Server zu konfigurieren. Wir wandern dort allerdings ein bisschen vom Thema dieser Seite ab :)
Matt H
3
@Matt hat versucht, einen besseren Weg vorzuschlagen, als die Einstellungen am Telefon zu ändern. Ich bin ein Systemadministrator und möchte alles lieber in DNS zentralisieren. Hunderte von HOSTS-Dateien auf der ganzen Welt, die alle unterschiedliche Namen auf unterschiedliche Adressen verweisen, sind ein Management-Albtraum, den man im Auge behalten muss, und ein großer Kopfschmerz und Albtraum, wenn jemand außer dem ursprünglichen Ersteller überhaupt Fehler beheben muss.
GAThrawn
@GAThrawn +1 für die 'großen Kopfschmerzen' - das ist es sicherlich :) DNS ist natürlich eine einfachere Option - fügte meiner Antwort Informationen zur Angabe eines nicht standardmäßigen DNS-Servers hinzu, falls dies für das OP nützlich ist. Mein "Ich mache Webentwicklung" sollte "... also fühle ich deinen Schmerz" bedeuten und nicht "... damit ich weiß, wovon ich spreche" - sorry, wenn es ein bisschen lah-de rüberkam -dah :)
Matt H
Ich hatte eine Lösung für einen Windows-Computer, die möglicherweise zu einer Ubuntu-Lösung führt. Leider habe ich meinen schrittweisen Blog-Beitrag verloren. Mit SimpleDNS konnte ich mein eigenes Netzwerk-DNS hosten, also jede Domain, die ich treffen musste, und ich hatte eine Domain-verbrauchende App, also musste ich sie einfach hinzufügen und SimpleDNS leitete die IP-Adresse an die Entwickler-Box im Netzwerk weiter. Dann ändern Sie in Android- oder iOS-Geräten einfach Ihr Wifi-DNS in die IP-Adresse der Box, in der Ihr DNS ausgeführt wird, und schon sind Sie weg!
Markive

Antworten:

6

Firefox Mobile unterstützt HTTP-Proxys. Obwohl es sich um eine andere Rendering-Engine handelt, sollten Sie zumindest ein Gefühl dafür bekommen, wie sich Ihre Benutzeroberfläche auf einem kleinen Touchscreen verhält. Hier erfahren Sie, wie Sie zum geheimen Konfigurationsabschnitt gelangen: http://support.mozilla.com/en-US/questions/758279

Der Standardbrowser bietet Proxy-Unterstützung in Gingerbread (obwohl dies Ihnen und Ihrem nicht verwurzelten Wunsch derzeit nicht hilft, sollte HTC in Kürze ein OTA-Update für Gingerbread anbieten , da dies Sie sonst dazu veranlassen könnte, Ihr Telefon zu rooten und erneut zu flashen).

(Für beide müssen Sie einen Proxy in Ihrem Netzwerk konfigurieren, damit er Ihre foo.xyz-Domain bedienen kann.)

Schließlich können Sie immer den Emulator des Android SDK verwenden . Die Leistung wird schmerzhaft langsam sein, aber Sie würden zumindest dieselbe Rendering-Engine ausführen.

Bearbeiten: Wie GAThrawn in den obigen Kommentaren erwähnt, können Sie möglicherweise auch mithilfe von DNS-Einträgen auf dem Standard-DNS-Server Ihres Netzwerks oder einem Entwicklungs-DNS-Server das erreichen, was Sie möchten. Ihr Telefon übernimmt den Standard-DNS-Server Ihres WLAN-Netzwerks oder Sie können ihn über Einstellungen> Drahtlos und Netzwerke> WLAN-Einstellungen> Menü-Softkey> Erweitert in einen bestimmten ändern.

Matt H.
quelle