Hallo Apachefriends,
nachdem ich alle Eure Beiträge über virtuelle Host's durchgearbeitet habe, möchte ich hier eine Zusammenfassung über die Lösung meines Problems geben.
Ich verfüge über eine Standleitung mit mehreren externen IP's. Zwischen Standleitung und Server (auf dem die Seiten liegen) habe ich eine Linux-Firewall. Der Server läuft mit OS Win 2000 Server. Internetseiten sind CMS Systeme (über *.php).
Ich hatte folgendes Problem:
Virtuelle Hosts waren in apache httpd.conf, wie hier schon oft beschrieben, definiert. Allerdings führten Internetaufrufe meiner Seiten immer nur auf den ersten definierten virtuellen Host.
Problemlösung:
Im Server der Netzwerkkarte mehrere interne IP's zuweisen (bei mir 12). Der Firewall mitteilen, welche externe IP auf welche interne IP zeigt (dabei Regeln nicht vergessen- also durchrouten).
Beispiel
123.234.345.456 (externe IP) auf 192.168.0.1 (interne IP) routen
In der hosts Datei (C:\WINNT\System32\drivers\etc\hosts - mit Editor öffnen) die jeweiligen internen IP's mit den Internetseiten definieren.
Beispiel
192.168.0.1 www.erstedomain.de (Leerzeichen zwischen IP und www nicht vergessen)
192.168.0.2 www.zweitedomain.de usw.
(speichern nicht vergessen)
In der httpd.conf Datei (...xammp\apache\conf\httpd.conf - mit Editor öffnen), nach unten scrollen und <VirtualHost> definieren.
Beispiel
NameVirtualHost 192.168.0.1:80
# 123.234.345.456 (externe IP nur zur Info)
<VirtualHost 192.168.0.1:80>
ServerName www.erstedomain.de
ServerAdmin admin@erstedomain.de
DocumentRoot "D:/Ordner/erstedomain//"
ErrorLog logs/erstedomain.de-error_log
CustomLog logs/erstedomain.de-access_log common
</VirtualHost>
NameVirtualHost 192.168.0.2:80
# 2344.345.456.567 (externe IP nur zur Info)
<VirtualHost 192.168.0.2:80>
ServerName www.zweitedomain.de
ServerAdmin admin@zweitedomain.de
DocumentRoot "D:/Ordner/zweitedomain//"
ErrorLog logs/zweitedomain.de-error_log
CustomLog logs/zweitedomain.de-access_log common
</VirtualHost>
(beliebig fortführen - je nach Anzahl der Seiten - speichern nicht vergessen)
Der NameVirtualHost ....:80 muss mit dem Namen <VirtualHost ....:80> übereinstimmen
Apache neu starten - die Seiten lassen sich jetzt alle aus dem jeweiligem "DocumentRoot" aufrufen.
Ich hoffe damit einen Beitrag für Apacheanfänger (so wie ich) geleistet zu haben, das war eine schwere Geburt (zwei Nächte um die doch sehr spezifischen Beiträge hier zu verstehen und zusammenzufassen).
Bitte um Antwort ob die ganze Sache hilfreich gewesen ist.
Gruß W-55