vhosts mit xampp
ich bin es leid die seiten auf meinem lokalen server (xampp) über die url
somit habe ich mir folgende struktur überlegt:
im grunde genommen ist der konfigurationsaufwand minimal. nur kleine änderungen in den folgenden 2 dateien sind notwenig (pfadangabe unter windows - xampp liegt bei mir auf c:/xampp):
zuerst ist natürlich eine xampp-installation (eventuell auch xampp-lite-installation) erforderlich. xampp steht eigentlich für x-apache-mysql-php-perl wobei das x für die plattformvielfalt steht, da es sowohl für windows (wampp), für linux (lampp) und auch für mac os (mampp) erhältlich ist. das beste daran ist: es ist eine freie software und kostenlos.
bei der eingabe von zb http://mailo.at in die adressleiste des browsers fragt dieser zuerst das system und, wenn er nicht fündig geworden ist, dann einen dns-server nach der dazugehörigen ip-adresse.
hier ist nun die erstgenannte der 2 dateien (hosts [c:/windows/system32/drivers/etc]) erforderlich. unter vista muss der editor (zb notepad) mit administratorrechten gestartet werden, sonst bekommt man beim versuch zum speichern die meldung, dass dies verwehrt wird bzw dass man nicht die berechtigung dazu hat.
wenn diese datei noch nicht verändert worden ist, sieht sie (ohne den # kommentaren) wahrscheinlich so aus:
hier fügt man unterhalb die gewünschten domains dazu - inhalt in meinem fall:
somit weiß das system, dass unter der eigenen ip adresse (127.0.0.1) nicht nur der localhost, sondern nun auch die domains mailo.at, testlab.mailo.at und projects.mailo.at zu finden sind.
in der httpd-vhosts.conf [c:/xampp/apache/conf/extra], der konfigurationsdatei für virtuelle hosts des apaches, ist sogar ein auskommentiertes beispiel einer konfiguration von virtuellen hosts angeführt. man kann diese kopieren und (auf die eigenen bedürfnisse) anpassen. in der datei wird auch auf die dokumentation zur konfiguration von virtuellen hosts verwiesen.
die wichtigste einstellung ist das auskommentieren von
ich habe es weiters wie folgt abgeändert:
vorerst sieht meine konfiguration der vhosts so aus [httpd-vhosts.conf]:
anmerkungen:
die index-dateien müssen sich in den angegebenen ordnern befinden, die log-dateien hingegen werden selbst erzeugt!
man kann sich auf www.faviconprime.com ein favicon generieren lassen und muss es nur in den hauptordner platzieren!
weiters können noch viele weitere einstellungen konfiguriert werden zb auch sicherheitsrelevante!
vielleicht schreibe ich dazu einen weiteren blogeintrag ;)
behilflich bei der fehlersuche kann die konsole sein. man navigiert in das bin-verzeichnis des apaches (bei mir c:/xampp/apache/bin) und kann mit dem befehl
weiters können durch den befehl
falls es zu folgender fehlermeldung kommt
die lösung zu diesem problem gibt es im nächsten blogeintrag ;)
mfg mailo
http://localhost/sehr/langer/pfad/zur/datei.php
aufzurufen - auch da sich schon eine menge an dateien in unterschiedlichen ordnern irgendwo befinden. deshalb will ich mal einen clean-up machen und auch gleich eine ordentliche struktur pflegen. außerdem sieht es viel cooler aus statt dem obigen langen pfad nur zb http://mailo.at einzugeben ;)somit habe ich mir folgende struktur überlegt:
mailo.at als pseudo-homepage
testlab.mailo.at für entwicklung bzw als spielwiese
projects.mailo.at für fertige projekte
testlab.mailo.at für entwicklung bzw als spielwiese
projects.mailo.at für fertige projekte
im grunde genommen ist der konfigurationsaufwand minimal. nur kleine änderungen in den folgenden 2 dateien sind notwenig (pfadangabe unter windows - xampp liegt bei mir auf c:/xampp):
hosts [c:/windows/system32/drivers/etc]
httpd-vhosts.conf [c:/xampp/apache/conf/extra]
httpd-vhosts.conf [c:/xampp/apache/conf/extra]
zuerst ist natürlich eine xampp-installation (eventuell auch xampp-lite-installation) erforderlich. xampp steht eigentlich für x-apache-mysql-php-perl wobei das x für die plattformvielfalt steht, da es sowohl für windows (wampp), für linux (lampp) und auch für mac os (mampp) erhältlich ist. das beste daran ist: es ist eine freie software und kostenlos.
bei der eingabe von zb http://mailo.at in die adressleiste des browsers fragt dieser zuerst das system und, wenn er nicht fündig geworden ist, dann einen dns-server nach der dazugehörigen ip-adresse.
hier ist nun die erstgenannte der 2 dateien (hosts [c:/windows/system32/drivers/etc]) erforderlich. unter vista muss der editor (zb notepad) mit administratorrechten gestartet werden, sonst bekommt man beim versuch zum speichern die meldung, dass dies verwehrt wird bzw dass man nicht die berechtigung dazu hat.
wenn diese datei noch nicht verändert worden ist, sieht sie (ohne den # kommentaren) wahrscheinlich so aus:
127.0.0.1 localhost
::1 localhost
::1 localhost
hier fügt man unterhalb die gewünschten domains dazu - inhalt in meinem fall:
127.0.0.1 localhost
::1 localhost
127.0.0.1 mailo.at
127.0.0.1 testlab.mailo.at
127.0.0.1 projects.mailo.at
::1 localhost
127.0.0.1 mailo.at
127.0.0.1 testlab.mailo.at
127.0.0.1 projects.mailo.at
somit weiß das system, dass unter der eigenen ip adresse (127.0.0.1) nicht nur der localhost, sondern nun auch die domains mailo.at, testlab.mailo.at und projects.mailo.at zu finden sind.
in der httpd-vhosts.conf [c:/xampp/apache/conf/extra], der konfigurationsdatei für virtuelle hosts des apaches, ist sogar ein auskommentiertes beispiel einer konfiguration von virtuellen hosts angeführt. man kann diese kopieren und (auf die eigenen bedürfnisse) anpassen. in der datei wird auch auf die dokumentation zur konfiguration von virtuellen hosts verwiesen.
die wichtigste einstellung ist das auskommentieren von
NameVirtualHost *:80
damit der apache weiß, dass es virtuelle hosts gibt.ich habe es weiters wie folgt abgeändert:
NameVirtualHost localhost
da in der httpd.conf [c:/xampp/apache/conf], der konfigurationsdatei des apaches, bereits vermerkt ist, dass dieser auf port 80 hört (zeile 53)
Listen 80
braucht man dies hier nicht explizit angeben.vorerst sieht meine konfiguration der vhosts so aus [httpd-vhosts.conf]:
<VirtualHost localhost>
<VirtualHost localhost>
<VirtualHost localhost>
<VirtualHost localhost>
ServerAdmin admin@localhost
ServerName localhost
DocumentRoot "c:/xampp/htdocs"
ErrorLog "c:/xampp/htdocs/logging/localhost/error.log"
CustomLog "c:/xampp/htdocs/logging/localhost/custom.log" common
DirectoryIndex index.php index.html index.htm
</VirtualHost>ServerName localhost
DocumentRoot "c:/xampp/htdocs"
ErrorLog "c:/xampp/htdocs/logging/localhost/error.log"
CustomLog "c:/xampp/htdocs/logging/localhost/custom.log" common
DirectoryIndex index.php index.html index.htm
<VirtualHost localhost>
ServerAdmin admin@mailo.at
ServerName mailo.at
DocumentRoot "c:/xampp/htdocs/mailo"
ErrorLog "c:/xampp/htdocs/logging/mailo/error.log"
CustomLog "c:/xampp/htdocs/logging/mailo/custom.log" common
DirectoryIndex index.php index.html index.htm
</VirtualHost>ServerName mailo.at
DocumentRoot "c:/xampp/htdocs/mailo"
ErrorLog "c:/xampp/htdocs/logging/mailo/error.log"
CustomLog "c:/xampp/htdocs/logging/mailo/custom.log" common
DirectoryIndex index.php index.html index.htm
<VirtualHost localhost>
ServerAdmin admin@mailo.at
ServerName testlab.mailo.at
DocumentRoot "c:/xampp/htdocs/mailo/testlab"
ErrorLog "c:/xampp/htdocs/logging/testlab/error.log"
CustomLog "c:/xampp/htdocs/logging/testlab/custom.log" common
DirectoryIndex index.php index.html index.htm
</VirtualHost>ServerName testlab.mailo.at
DocumentRoot "c:/xampp/htdocs/mailo/testlab"
ErrorLog "c:/xampp/htdocs/logging/testlab/error.log"
CustomLog "c:/xampp/htdocs/logging/testlab/custom.log" common
DirectoryIndex index.php index.html index.htm
<VirtualHost localhost>
ServerAdmin admin@mailo.at
ServerName projects.mailo.at
DocumentRoot "c:/xampp/htdocs/mailo/projects"
ErrorLog "c:/xampp/htdocs/logging/projects/error.log"
CustomLog "c:/xampp/htdocs/logging/projects/custom.log" common
DirectoryIndex index.php index.html index.htm
</VirtualHost>ServerName projects.mailo.at
DocumentRoot "c:/xampp/htdocs/mailo/projects"
ErrorLog "c:/xampp/htdocs/logging/projects/error.log"
CustomLog "c:/xampp/htdocs/logging/projects/custom.log" common
DirectoryIndex index.php index.html index.htm
anmerkungen:
die index-dateien müssen sich in den angegebenen ordnern befinden, die log-dateien hingegen werden selbst erzeugt!
man kann sich auf www.faviconprime.com ein favicon generieren lassen und muss es nur in den hauptordner platzieren!
weiters können noch viele weitere einstellungen konfiguriert werden zb auch sicherheitsrelevante!
vielleicht schreibe ich dazu einen weiteren blogeintrag ;)
behilflich bei der fehlersuche kann die konsole sein. man navigiert in das bin-verzeichnis des apaches (bei mir c:/xampp/apache/bin) und kann mit dem befehl
apache -h
die hilfe aufrufen. darunter befinden sich 2 wertvolle parameter.
apache -S
dient zur überprüfung, ob es zu irgendwelchen konflikten gekommen ist.weiters können durch den befehl
apache -E foo.txt
fehler beim starten des apaches in die datei foo.txt mitgeloggt werden.falls es zu folgender fehlermeldung kommt
(OS 10048) Normalerweise darf jede Socketadresse (Protokoll, Netzwerkadresse oder Anschluss) nur jeweils einmal verwendet werden.
: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
könnte skype daran schuld sein (oder ein anderes programm, welche auch bereits auf port 80 lauscht).: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
die lösung zu diesem problem gibt es im nächsten blogeintrag ;)
mfg mailo
mailo - 23. Okt, 20:00
...