4.4. Virtuelle Server einrichten In diesem Abschnitt lernen Sie,
Der Apache-Webserver ist in der Lage, gleichzeitig unter mehreren Hostnamen "Virtuelle Server" zu verwalten. Dadurch werden vor allem Kosten gespart, denn es wäre sicherlich nicht besonders sinnvoll, für jede Webpräsenz einen eigenen Rechner mit separat konfiguriertem Webserver zur Verfügung zu stellen. Praktisch bedeutet dies, dass beispielsweise die Präsenzen www.example.com und www.example.org auf demselben physischen Webserver untergebracht sein können. Virtuelle Server werden in zwei Kategorien unterteilt:
IP-basierte virtuelle Server Steht für den Webserver in jeder Domain eine eigene IP-Adresse zur Verfügung, können IP-basierte virtuelle Server eingerichtet werden. Der Vorteil dieser Lösung besteht darin, dass sie zu allen Webclients voll kompatibel ist. Nachteilig ist, dass pro Domain eine eigene IP-Adresse belegt wird. Weiterhin muss der Serverrechner IP-Aliasing unterstützen und das Netz entsprechend konfiguriert werden. Für jeden einzurichtenden virtuellen Server können separate Einstellungen festgelegt werden. Dies geschieht – ähnlich wie bei Konfigurationen für bestimmte Verzeichnisse und Dateien – durch Tags. Zwischen diesen Tags stehen die Konfigurationsanweisungen, die schon im Abschnitt 4.2. behandelt wurden, beispielsweise <VirtualHost
192.168.0.32> <VirtualHost
192.168.0.33> Diese Anweisungen richten zwei virtuelle Server ein. Mit ServerName werden den IP-Adressen die passenden Rechnernamen zugewiesen. Namensbasierte virtuelle Server Bei namensbasierten virtuellen Servern ist es möglich,
verschiedene virtuelle Server über eine IP-Adresse zu betreiben. Dem
Serverrechner braucht somit nur eine IP-Adresse zugewiesen zu
werden. Richtet ein Webclient eine Anfrage an einen der virtuellen
Server, muss er auch Informationen über den Servernamen (HTTP-Header Host) übergeben, damit
der Apache-Webserver erkennen kann, von welchem virtuellen Server
die Anforderung bedient werden soll. Die Konfiguration namensbasierter virtueller Server ist fast identisch mit der IP-basierter virtueller Server. Allerdings muss zuerst mit der Anweisung NameVirtualHost dem Apache-Webserver mitgeteilt werden, auf welcher IP-Adresse Anforderungen an die virtuellen Server empfangen werden. Beispielsweise: NameVirtualHost 192.168.0.24 Anschließend können für jeden virtuellen Server separate Einstellungen festgelegt werden: <VirtualHost
192.168.0.24> <VirtualHost
192.168.0.24> Im obigen Beispiel werden wieder zwei virtuelle Webserver www.example.com und www.example.org eingerichtet, die aber in diesem
Fall auf einem Serverrechner mit nur einer IP-Adresse betrieben
werden. Spricht dagegen ein Client die IP-Adresse direkt an, würden die Daten des angeforderten Verzeichnisses unterhalb der Document-Root des Hauptservers zurückgegeben werden. Es ist auch möglich, einem bestimmten virtuellen Server mit der Anweisung ServerAlias mehr als einen Rechnernamen zuzuweisen. Sollen beispielsweise für die Domains www.example.org und www.example.net die gleichen Inhalte angezeigt werden, sähe die Konfiguration folgendermaßen aus: <VirtualHost
192.168.0.24> Die Möglichkeiten zur Konfiguration von virtuellen Servern sind sehr vielfältig. Daher sei auch an dieser Stelle auf die weiterführende Literatur verwiesen, beispielsweise auf die offizielle Apache-Dokumentation unter http://www.apache.org/docs/vhosts/. |