Apache: Virtuelle Server
Mit dem Apache Server und einem entsprechend konfigurierten Domain Name Server ist es möglich auf einem Server mehrere Domains zu verwalten. Der Apache kann dabei die Domains sowohl IP basierend (IP-based Virtual Host) als auch Namens basierend (Name-based Virtual Host) verwalten.IP-basiertes Virtual Host
Bei dem IP basierten virtuellen Host, wird jeder Domain, die zu hosten ist, eine eigene IP-Adresse zugeordnet. Dabei fragt der Client bei seinem zuständigen DNS-Server nach der IP-Adresse des Domainnamens und spricht dann den Webserver darüber an. Diese Variante ist bei der begrenzten Anzahl an IP-Adressen und der heutigen Anzahl der Domainnamen natürlich nicht zu empfehlen und somit wird hauptsächlich das Namen basierende Virtual Host Verfahren angewandt.Name-basiertes Virtual Host
Bei Namen basierten Virtuellen Hosts wird jeder Domain die auf einem Server liegt die gleiche IP zugeordnet und der Webserver entscheidet anhand des HTTP-Host-Headers welche Domain der Client anfordert. Das hat den Vorteil, dass ein kleiner Internet Provider nicht unzählige IP Adressen anmieten oder kaufen muss.Der VirtualHost-Container
In jedemVirtualHost
-Container wird ein eigenständiger Server konfiguriert. Deshalb lassen sich fast alle grundlegenden Servereinstellungen die in der httpd.conf getätigt werden können auch auf die VirtualHost
-Container anwenden. So lässt sich für mehrere Domains unterschiedlicher Funktionsumfang realisieren. Zum Beispiel für Domain A PHP Support und für Domain B nur ASP und für Domain C PHP und ASP mit zusätzlichem Verzeichnisschutz usw..
Virtual Host Beispiele
Im vorangegangenen Kapitel wurden bereits die grundlegenden Einstellungsmöglichkeiten für den Server vorgestellt und dort auch vermerkt ob diese in dem VirtualHost-Container funktionieren. Ein anderer Port kann natürlich auch gewählt werden, dieser muss aber bei der Anweisung des VirtualHost mit angegeben werden.#IP Virtual Host
<VirtualHost 123.456.789.123>
ServerName www.domain2.de
ServerAdmin root@domain2.de
DocumentRoot /usr/www/domain2/htdocs
ErrorLog /usr/www/logs/err_domain2.log
</VirtualHost>
<VirtualHost 123.456.789.123:8080>
# ... verschiedene Serveranweisungen ...
</VirtualHost>
#Name Virtual Host
NameVirtualHost 123.456.789.123
<VirtualHost www.domain1.org>
ServerName www.domain1.org
ServerAdmin admin@domain1.org
DocumentRoot /usr/www/domain1/htdocs
# ... weitere Einstellungen für den Server ...
</VirtualHost>
<VirtualHost www.domain2.org>
ServerName www.domain2.com
ServerAdmin verwaltung@domain2.com
DocumentRoot /usr/www/domain2/htdocs
# ... weitere Einstellungen für den Server ...
</VirtualHost>
Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.
Weiterlesen: ⯈ Sicherheit und Performance
Über uns
Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project