Virtuelle Domains auf xampp einrichten

Webseiten als Grafik entwerfen und dann zur Umsetzung in eine Webseite weitergeben ist in vielen Fällen suboptimal. Grafikprogramme rendern anders als Browser und bei manchen Dingen ist ein Design schneller mit CSS erstellt, als unter Zuhilfenahme jeder noch so ausgefuchsten Ebenentechnik. Letztere ist notwendig, wenn man Printprodukte erstellt – meiner Ansicht ist das jedoch nur begrnezt sinnvoll für das Layouten einer Webseite. Hier sollte und kann man mit reinem html viel schneller und präziser zu einem Ergebnis kommen.

In der Zusammenarbeit an einem shop, bei dem nur das Layout – unter Beibehaltung des Markups – umgestaltet werden sollte, habe ich mir für die einzelnen Seitenvorlagen exemplarisch das html aus dem Quelltext runtergezogen und lokal installiert. Je nachdem jedoch, wie die Pfade in der prduktiven Webseite gesetzt sind bzw. um es genauer zu sagen: wenn die Pfade relativ zur Domain angelegt sind, kann es jedoch sein, dass man lokal die Pfade zu Bild- und sonstigen Dateien umständlich anpassen muss und beim Zurückspielen auf die produktive Installation ebenfalls. Für Designer und Programmierer eine nicht gerade erbauende weil doppelte Arbeit.

Ganz froh war ich deshalb über den Tipp von Mathias auf dem localhost virtuelle Domains einzurichten. Und da ja Servertechnologie nicht gerade zu meinen Spezialitäten gehört, war ich froh im Netz eine gute Anleitung gefunden zu haben.

Zuerst muss auf dem Rechner (Windows, bei mir: Vista) die hosts Datei gesucht werden.
Sie befindet sich in aller Regel unter folgendem Pfad:
C:\WINDOWS\system32\drivers\etc\hosts

Die Datei öffnen und die virtuelle Domain eintragen. Klingt ganz einfach, kann aber unter Vista Probleme machen, denn es ist eine Systemdatei, die z.B. von meinem TotalCommander, auch mit der Option „Versteckte Dateien“ anzeigen nicht sichtbar ist. Aber mit dem Windows-Explorer und unter Aktivierung der entsprechenden Option geht es. Zweites Problem kann sein, dass man die Datei nicht abspeichern kann. Auf meinem System arbeite ich unter Vista aus Sicherheitsgründen nicht als Admin, sondern melde mich selber als Benutzer an und Benutzer dürfen nunmal keine Systemdateien ändern und überschreiben. Also: falls nichts geht, als Admin einloggen und in die hosts Datei einen zusätzlichen Eintrag machen:
127.0.0.1. meine-virtuelle-domain.de www. meine-virtuelle-domain.de

Nun könnte man auf die Idee kommen diese virtuelle Domain exakt so zu benennen wie die real existierende Domain im produktiven Einsatz. Das ist aber nicht ganz so gut, denn dann kann man später die Original-Domain nicht mehr erreichen – besser ist es also den Domainnamen ein wenig abzuändern.

Und weiter.

Im Xampp muss man die Datei httpsd-vhosts.conf suchen:
Pfad: xampp\apache\conf\extra\httpsd-vhosts.conf

Dort befinden sich eine ganze Reihe von Eintragungen mit einer # davor. Durch die Raute sind diese Eintragungen auskommentiert und damit inaktiv. Um virtuelle Domains überhaupt zu aktivieren, muss die Raute an entspechender Stelle rausgenommen werden bzw. NameVirtuellHost für die lokale IP Adresse aktiviert werden und damit das geschieht, muss da stehen:
NameVirtualHost 127.0.0.1:80

Nu kann man aber nicht einfach seine virtuellen Domains eintragen, denn localhost selber ist nun auch virtuell und kann nicht mehr erreicht werden. Deswegen besteht der nachfolgende Eintrag immer aus mindestens 2 Containern: der erste für localhost und der zweite für die virtuelle Domain, die ich mir einrichten möchte.

 

    ServerName localhost
    AddType text/html .shtml
    AddHandler server-parsed .shtml
    ServerAdmin webmaster@localhost
    DocumentRoot "c:/xampp/htdocs/"
    ScriptAlias /cgi-bin/ "c:/xampp/htdocs/cgi-bin/"

    <Directory "c:/xampp/htdocs">
    Options Indexes FollowSymLinks
    Options +Includes
#   Options +
    AllowOverride FileInfo
    AllowOverride None
    Order allow,deny
    Allow from all
    DirectoryIndex index.php index.shtml index.html index.htm
    



    ServerName www.meine-virtuelle-domain.de
    ServerAlias meine-virtuelle-domain.de
    AddType text/html .shtml
    AddHandler server-parsed .shtml
    ServerAdmin webmaster@domain.dd
    DocumentRoot "c:/xampp/htdocs/mein-ordnername"
    ScriptAlias /cgi-bin/ "e:/xampp/htdocs/mein-ordnername/cgi-bin/"

    <Directory "e:/xampp/htdocs/mein-ordnername ">
    Options Indexes FollowSymLinks
    Options +Includes
#   Options +
    AllowOverride FileInfo
    AllowOverride None
    Order allow,deny
    Allow from all
    DirectoryIndex index.php index.shtml index.html index.htm
    


Done :-).