2013-09-25 13 views
30

Ich schreibe eine Webanwendung, die sich abhängig von einem URL-Präfix unterschiedlich verhält. Das Format ist so etwas wie:Subdomain zu localhost URL hinzufügen

Die Web-App verhält sich auf Basis von Myprefix anders. Meine Web-App extrahiere diesen Teil von der URL und agiere darauf.

Allerdings, wenn ich auf meinem lokalen testen, verwende ich eine localhost-Adresse:

https://localhost:1234 

ich counldn't wie etwas tun:

https://myprefix.localhost:1234 

Was ist der beste Weg für mich zu testen Dieses Szenario?

Vielen Dank

+0

Hier ist die Lösung dieses Problems http://stackoverflow.com/a/29629675/2950006 –

Antwort

46

Leider, denn localhost keine richtige Domäne ist, können Sie nicht eine Sub-Domain, um es so hinzuzufügen. Sie können, jedoch, trick deinen Computer zu denken, dass es eine bestimmte Domäne besitzt und Dinge auf diese Weise testen. Zum Beispiel, wenn Sie ein UNIX-basiertes Betriebssystem, geöffnet (als root) die Datei /etc/hosts und eine Zeile (oder Zeilen) wie folgt hinzufügen:

127.0.0.1 example.com 
127.0.0.1 subdomain.example.com 

Ihr Computer behandeln jetzt sowohl example.com und subdomain.example.com als gehörend zu sich selbst. Wenn Sie entweder in Ihrem Webbrowser besuchen, funktionieren sie im Prinzip genauso wie localhost, aber Ihr Webserver wird die richtige Domäne in seinem Host-Header sehen.

+0

Vielen Dank für Ihre Antwort führen kann. Das ist genau was ich will. Allerdings läuft meine Web-App auf einem Port, sagen wir 1234. Ich suchte herum und Leute sagten, dass es keine Möglichkeit gibt, eine Portnummer in/etc/hosts anzugeben. Was ist der beste Weg, um einen Port zu spezifizieren? – Kevin

+2

Sie müssen den Port wie üblich in Ihrer URL verwenden, z. B. "http: //subdomain.example.com: 1234/was auch immer". Der Port ist vollständig von der Domäne getrennt (Domänen werden zum Identifizieren der Maschine verwendet, Ports werden zum Identifizieren verwendet, mit welchem ​​Programm auf der Maschine kommuniziert wird). –

+0

Alternativ können Sie, wenn Sie Ihre Software als root ausführen können (zum Testen), einfach Port 80 verwenden, was der Standard ist, so dass Sie keinen angeben müssen. –

13

Ich bin nicht sicher über das gleiche Verhalten bei Windows. Ich arbeite an Linux Mint.

Sie können lvh.me:port als lokale Domäne verwenden. Sie können sich vorstellen, dass Ihr Projekt unter localhost:port für diese Domäne bereitgestellt wird.

sub.localhost:port Arbeiten an Chrom

Statt sub.localhost:port Siesub.lvh.me:port

UPD zu verwenden haben. Firefox fügt automatisch www hinzu. am Anfang der eingegebenen Domain, die Probleme mit Subdomains Testen