Jeder Webentwickler hat ja so seine eigenen Vorlieben, wenn es darum geht welche Entwicklungsmethode ihm am meisten taugt. Die einen schaffen am liebsten direkt auf dem Server, andere entwickeln lieber erst mal lokal und schaufeln die Website erst später online. Ich gehöre zu letzteren, vor allem auch, weil ich nicht immer online sein müssen will um was zu arbeiten.
Wenn man jetzt so eine Website lokal entwickelt, dann stößt man schnell auch auf den Begriff Virtual Host. Eigentlich nichts anderes als eine „gefakte Internetadresse“, die mich – statt ins WWW – auf meinen eigenen Rechner umleitet und dort meine lokale Seite aufruft. Das ist ungemein praktisch, weil viele CM-Systeme mit den kryptischen Adressen, die man sonst verwenden müsste, überhaupt nicht umgehen können (Wordpress...). Zum Anlegen solcher virtuellen Hosts gibt es mehrere, kostenpflichtige Tools (z.B. MAMP Pro, VirtualHostX) die einem die Arbeit abnehmen. Allerdings kann man sich mit wenigen Handgriffen das Geld sparen und virtuelle Hosts innerhalb von ein paar Minuten selbst anlegen. Wie das geht, steht hier:
Ich gehe jetzt mal von folgender Konfiguration aus: MAMP ist installiert und du verwendest Parallels für die Virtualisierung deiner Windows-Testumgebung. Falls nicht, könnten die Ansätze bei anderen Umgebungen aber ähnlich sein.
1. Virtuellen Host in MAMP anlegen
Zuerst müssen wir eine Config-Datei im MAMP Verzeichnis anpassen: /Programme/MAMP/conf/apache/httpd.conf in einem Texteditor der Wahl öffnen und ganz nach unten scrollen (da steht dann auch schon was von virtuellen Hosts):
Da fügen wir dann zuerst (ganz unten) folgende Zeile ein:
NameVirtualHost *:80
und anschließend für jeden virtuellen Host, den wir anlegen wollen:
<VirtualHost *:80>
ServerName meine-domain.local
ServerAlias www.meine-domain.local
DocumentRoot "Pfad/zur/Seite/"
</VirtualHost>
Pfad/zur/Seite/ ist dein Verzeichnis in dem die Website liegt, ServerName und ServerAlias jeweils deine Adresse die du verwenden willst. Fragt mich nicht was die einzelnen Angaben jetzt genau zu bedeuten haben – ich weiß es nicht (aber ich weiß wo man es nachlesen kann: http://httpd.apache.org/docs/2.0/vhosts/).
Wichtig: Bitte keine TABs verwenden, sondern die Zeilen mit 4x Leertaste einrücken. Auf der sicheren Seite seid ihr wenn, ihr die Angaben komplett abtippt statt Copy & Paste zu verwenden. Die Datei ist anscheinend sehr anfällig für irgendwelche Zeichen, die dort nicht hingehören.
2. Die hosts-Datei von OS X anpassen
Damit unser Browser weiß, dass er bei www.meine-domain.local nicht ins Web sondern auf unseren Rechner zugreifen soll, müssen wir noch die Host-Datei von OS X anpassen.
Dazu öffnen wir zuerst das Terminal und führen folgenden Befehl aus:
sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit /etc/hosts
dann noch das Passwort eintippen und es öffnet sich unserer Host-Datei in TextEdit (man könnte die auch direkt im Terminal bearbeiten, das ist aber irgendwie unkomfortabel).
In die Host-Datei müssen jetzt noch folgende Zeilen:
127.0.0.1 meine-domain.local
127.0.0.1 www.meine-domain.local
Speichern, Schließen, Terminal beenden, MAMP anwerfen und im Browser testen ob es funktioniert. Ja? Gut! Dann können wir jetzt dafür sorgen, dass wir auch aus unserer Parallels-Windows-Installation auf diesen Host zugreifen können.
3. Parallels Bridget-Network IP ermitteln
Wir brauchen erst mal die IP, die Parallels für die Netzwerkverbindung verwendet (ich habe „Bridged-Netzwerk“ eingestellt). In Version 6 werden diese aber standardmäßig in den Systemeinstellungen nicht mehr angezeigt. Auf der Parallels Website ist aber eine Lösung beschrieben: http://kb.parallels.com/en/9243 (Parallels 5 Nutzer klicken hier, Parallels 4 Nutzer dürften das Problem nicht haben)
Haben wir das geschaft, kopieren wir uns die IP, die unter Systemeinstellungen > Netzwerk > Parallels Shared #0 steht und starten unser Parallels-Windows.
4. Host-Datei von Windows anpassen
Unter Windows gehen wir ins Verzeichnis C:/Windows/system32/drivers/etc und öffnen die Datei hosts im Editor. Dort geben wir analog zu der OS X Host-Datei unseren virtuellen Host, aber mit der vorher kopierten IP ein:
10.211.55.xx meine-domain.local
10.211.55.xx www.meine-domain.local
Speichern, schließen und unter Windows testen ob's auch klappt.
Fazit
Wenn man so einen virtuellen Host einmal angelegt hat, geht's beim nächsten mal schon deutlich schneller von der Hand. Wer aber absolut nicht in irgendwelchen Konfigurationsdateien oder im Terminal rummachen will, ist mit VirtualHostX oder MAMP Pro auf jeden Fall gut beraten.