apache virtuelle hosts mit vhosts.conf
Servus
Ich habe hier (lokales LAN innerhalb der Firewall) einen Server (WS2003) stehen, auf dem Apache (2.2) läuft. Die IP (192.168.42.211) ist fix und hat einen funktionierenden DNS-A-Eintrag (ddd.nameofdomain.local).
Es sollen zwei verschiedene Webserver darauf laufen (DNS-Alias auf ddd.nameofdomain.local ist eingerichtet):
Wenn ich im Browser je einen der drei Servernamen eingebe, erscheint korrekterweise die Standardseite des Apache-Webservers.
Um an den richtigen Content zu gelangen muss man derzeit umständlich im Browser eingeben:
Um es dann mal einfacher zu haben, habe ich die vhosts.conf wie folgt angepasst:
Sobald diese Konfiguration aktiv ist, sind die Webserver nicht mehr erreichbar:
Wer hat eine Idee woran es scheitern könnte und mag mir bitte helfen?
Ich habe hier (lokales LAN innerhalb der Firewall) einen Server (WS2003) stehen, auf dem Apache (2.2) läuft. Die IP (192.168.42.211) ist fix und hat einen funktionierenden DNS-A-Eintrag (ddd.nameofdomain.local).
Es sollen zwei verschiedene Webserver darauf laufen (DNS-Alias auf ddd.nameofdomain.local ist eingerichtet):
- abc.nameofdomain.local
- xyz.nameofdomain.local
Wenn ich im Browser je einen der drei Servernamen eingebe, erscheint korrekterweise die Standardseite des Apache-Webservers.
Um an den richtigen Content zu gelangen muss man derzeit umständlich im Browser eingeben:
- ddd.nameofdomain.local/abc
- ddd.nameofdomain.local/xyz
- abc.nameofdomain.local/abc
- xyz.nameofdomain.local/xyz
Um es dann mal einfacher zu haben, habe ich die vhosts.conf wie folgt angepasst:
<VirtualHost *:80>
ServerName ddd.nameofdomain.local
ServerAlias abc.nameofdomain.local
ServerAdmin mymail@nameofdomain.local
DocumentRoot /abc
ErrorLog /abc_error.log
<Directory /abc>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName ddd.nameofdomain.local
ServerAlias xyz.nameofdomain.local
ServerAdmin mymail@nameofdomain.local
DocumentRoot /xyz
ErrorLog /xyz_error.log
<Directory /xyz>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Not Found
The requested URL / was not found on this server.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 99189
Url: https://administrator.de/contentid/99189
Ausgedruckt am: 26.11.2024 um 00:11 Uhr
9 Kommentare
Neuester Kommentar
Moin,
bei mir schauts so aus:Bei dir ist der "ServerName" immer der selbe, dabei ist das doch der Name des "virtuellen Servers" den du anlegen möchtest. Über "ServerAlias" kannst du ihm auch unter einer weitern Adresse aufrufbar machen (s. meinen httpd-vhost.conf VirtualHost 1 und 3) bei dem drittem möchte ich anmerken, das ich diesen local verwende.
Einfach weil ich nicht immer lust habe die volle Adresse einzutippen. (Wird in der host-Datei ebenfalls auf die entsprechende IP umgeleitet)
Ich nehme mal an das du weisst, das die Angabe des "DocumentRoot" absolute ist. (Sorry, kann mich nicht entscheiden weil du ja auch den umstand bei dem derzeitigem Aufruf hast !? :confused
Gruß Arano
bei mir schauts so aus:
<VirtualHost *:80>
ServerAdmin meine@email
DocumentRoot "/srv/htdocs/meins.dnsalias.com"
ServerName meins.dnsalias.com
ServerAlias www.meins.dnsalias.com
ErrorLog "logs/meins.dnsalias.com-error_log"
CustomLog "logs/meins.dnsalias.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin meine@email
DocumentRoot "/srv/htdocs/garten.meins.dnsalias.com"
ServerName garten.meins.dnsalias.com
ErrorLog "logs/garten.meins.dnsalias.com-error_log"
CustomLog "logs/garten.meins.dnsalias.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin meine@email
DocumentRoot "/srv/htdocs/ball.meins.dnsalias.com"
ServerName ball.meins.dnsalias.com
ServerAlias ball
ErrorLog "logs/ball.meins.dnsalias.com-error_log"
CustomLog "logs/ball.meins.dnsalias.com-access_log" common
</VirtualHost>
Einfach weil ich nicht immer lust habe die volle Adresse einzutippen. (Wird in der host-Datei ebenfalls auf die entsprechende IP umgeleitet)
192.168.40.200 meins.dnsalias.com
192.168.40.200 www.meins.dnsalias.com
192.168.40.200 garten.meins.dnsalias.com
192.168.40.200 ball.meins.dnsalias.com
192.168.40.200 ball
Gruß Arano
Hallo,
du hast aber in der Apache Konfiguration
NameVirtualHost *:80
stehen (vor dem erstem <VirtualHost>-Eintrag)?
Außerdem gilt bei Apache die Regel, wenn Virtual Hosts mit diesem Schema eingestellt sind und dann eine Domain nicht bekannt ist wird automatisch der erste <VirtualHost>-Eintrag benutzt.
Um den Fehler einzugrenzen:
Aktivier für jeden VHost eine eigene Fehler-Log-Datei. Dann siehst du welcher VHost die Seite bekommt.
du hast aber in der Apache Konfiguration
NameVirtualHost *:80
stehen (vor dem erstem <VirtualHost>-Eintrag)?
Außerdem gilt bei Apache die Regel, wenn Virtual Hosts mit diesem Schema eingestellt sind und dann eine Domain nicht bekannt ist wird automatisch der erste <VirtualHost>-Eintrag benutzt.
Um den Fehler einzugrenzen:
Aktivier für jeden VHost eine eigene Fehler-Log-Datei. Dann siehst du welcher VHost die Seite bekommt.
Es funktioniert ja nur nicht, wenn ich die http-vhosts.conf aktiviere, sonst gehts ja.
Weil die VHosts alle normalen Hosts auf dem Server überschreiben.
Es könnte sein, dass du irgendwo einen Vhost mit der Konfiguration C:\WWW hast.
Wenn Vhosts aktiviert sind gilt bei Apache die Regel: Wird für eine Domain kein passender VHost gefunden wird der erste in der Konfiguration benutzt.
Könntest du mal deine komplette httpd.conf (mit allen includes aufgelöst) posten?