Legen Sie manuell einen Hostnamen für die IP-Adresse fest (z. B. /etc/hosts equiv.?)

Ich bin Webentwickler und entwickle unsere Website auf meinem lokalen Desktop-Rechner. Ich habe ein Android-Handy (HTC Desire mit Android 2.2). Ich möchte testen, wie unsere Webanwendung auf Android aussieht. Ich kann mich mit demselben WLAN-Netzwerk wie mein Desktop-Computer verbinden, aber wir verwenden in unserer Webanwendung mehrere hartcodierte gefälschte Domänennamen. Auf meinem Ubuntu Linu7x-Desktop-Computer setze ich /etc/hostsdiese Domänennamen auf lokale IP-Adressen.

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

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 zeigen, sollte Ihr Telefon, wenn es sich mit Ihrem internen WLAN verbindet, Ihre internen DNS-Einstellungen abrufen und einfach funktionieren .
@GAThrawn Ich mache auch Webentwicklung (allerdings nicht speziell für mobile Geräte). In meiner Umgebung ist es normal, eine Reihe lokaler Entwicklungsstandorte auf verschiedenen virtuellen Hosts zu konfigurieren und sich mit ihnen über /etc/hosts (oder Windows-Äquivalente) zu verbinden. Da das OP Linux ausführt, sollte es ziemlich einfach sein, einen Entwickler-DNS-Server zu konfigurieren. Wir schweifen aber irgendwie vom Thema dieser Seite ab :)
@Matt hat versucht, einen besseren Weg vorzuschlagen, als die Einstellungen am Telefon zu ändern. Ich bin ein Systemadministrator und hätte lieber alles zentral im DNS. Hunderte von HOSTS-Dateien überall, die alle unterschiedliche Namen auf unterschiedliche Adressen verweisen, sind ein Management-Alptraum, den es zu verfolgen gilt, und ein riesiger Kopfschmerz und Albtraum, wenn irgendjemand außer dem ursprünglichen Ersteller überhaupt eine Fehlerbehebung durchführen muss.
@GAThrawn +1 für die 'großen Kopfschmerzen' - das ist es sicherlich :) DNS ist natürlich eine einfachere Option - meiner Antwort wurden Informationen zur Angabe eines nicht standardmäßigen DNS-Servers hinzugefügt, falls dies für das OP nützlich ist. Mein "Ich mache Webentwicklung" sollte eher "... also fühle ich deinen Schmerz" bedeuten als "... also weiß ich, wovon ich rede" - sorry, wenn es ein bisschen lahm rüberkam -dah :)
Ich hatte eine Lösung für eine Windows-Maschine, die möglicherweise eine Ubuntu-Lösung auffordert, leider habe ich meinen Schritt-für-Schritt-Blog-Post verloren. Mit SimpleDNS konnte ich mein eigenes Netzwerk-DNS hosten, also jede Domain, die ich erreichen musste, und ich hatte eine Domain-verbrauchende App, also musste ich sie einfach hinzufügen und SimpleDNS leitete die IP-Adresse an die Entwicklungsbox im Netzwerk weiter. Dann ändern Sie auf einem Android- oder iOS-Gerät einfach Ihr WLAN-DNS in die IP-Adresse der Box, auf der Ihr DNS ausgeführt wird, und Sie sind weg!
Ja, DNS könnte hier eine Option für mich sein, jetzt, wo ich mich damit befasse (da wir einen DNS-Server (sorta) haben). Aber gibt es keine Möglichkeit, dies ohne einen DNS-Server zu tun?

Antworten (1)

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 Ihre Benutzeroberfläche auf einem kleinen Touchscreen funktioniert. So gelangen Sie zum geheimen Konfigurationsbereich - http://support.mozilla.com/en-US/questions/758279

Der Standardbrowser enthält Proxy-Unterstützung in Gingerbread (obwohl das Ihnen und Ihrem nicht gerooteten Desire im Moment nicht hilft, sollte HTC bald ein OTA-Update für Gingerbread anbieten , oder es kann Sie dazu anregen, Ihr Telefon zu rooten und neu zu flashen).

(Für beide müssten 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önnten Sie möglicherweise auch mit DNS-Einträgen auf dem Standard-DNS-Server Ihres Netzwerks oder einem Entwicklungs-DNS-Server erreichen, was Sie wollen. Ihr Telefon übernimmt den Standard-DNS-Server Ihres WLAN-Netzwerks, oder Sie können ihn über Einstellungen > Drahtlos & Netzwerke > WLAN-Einstellungen > Menü-Softkey > Erweitert auf einen bestimmten ändern.