Freitag, 13. Juli 2012

Apache2 - virtuelle Server

Virtuelle Server



Sie können mehr als einen Webserver auf einer Maschine betreiben. Warum soll denn eine Instanz Ihres Apache sämtliche Anfragen bearbeiten, wenn Sie für unterschiedliche Domänen mit unterschiedlichen Instanzen arbeiten können.

Im Wesentlichen existieren drei Arten von virtuellen Servern: IP-Basierte VWS (VirtualWebServer), Port-Basierte-VWS und Namen-Basierte-VWS. Der Unterschied ist, neben der Konfiguration, die Art der virtuellen Webserver und der Einträge im BIND. Die Konfigurationsdateien legen Sie am besten im /etc/apache2/vhosts.d/ Verzeichnis ab.

Zur Sicherheit sollten Sie stets einen Default-Server definieren: <VirtualHost _default_:*>



IP-Basierter-VWS

Geben Sie Ihrer Netzwerkschnittstelle mehrere IP-Adressen, weisen Sie jeder IP eine eigene Domäne im Apache2 zu und Ihr Virtual-Web-Server basierend auf unterschiedlichen IPs ist fertig.

Beispiel:

<VirtualHost 192.168.0.102>

    ServerName www.example.com

    ServerAdmin    nimda@example.com

    DocumentRoot "/usr/local/www/main/"

    ErrorLog /var/log/httpd/example

</VirtualHost>



<VirtualHost 192.168.0.103>

    ServerName www.plemaxe.com

    ServerAdmin    nimda@plemaxe.com

    DocumentRoot "/usr/local/www/2nd/"

    ErrorLog /var/log/httpd/plemaxe

</VirtualHost>




Port-Basierter-VWS

Richten Sie in Ihrer Konfigurationsdatei die VWS her, bringen Sie Ihren Apache2 dazu auf mehreren Ports zum Lauschen und Sie haben einen Port-Basierten-VWS.

Beispiel:

Listen 80

Listen 65000



<VirtualHost 192.168.0.102:80>

    ServerName www.example.com

    ServerAdmin    nimda@example.com

    DocumentRoot "/usr/local/www/main/"

    ErrorLog /var/log/httpd/example

</VirtualHost>



<VirtualHost 192.168.0.102:65000>

    ServerName www.plemaxe.com

    ServerAdmin    nimda@plemaxe.com

    DocumentRoot "/usr/local/www/2nd/"

    ErrorLog /var/log/httpd/plemaxe

</VirtualHost>




Namen-Basierter-VWS

Dieser VWS wird ein wenig anders eingerichtet. Sie benötigen unbedingt die Direktive NameVirtualHost in Ihrer Konfigurationsdatei. Darüber teilen Sie Apache2 mit, dass nun Virtuelle Server folgen, welche sich im Namen unterscheiden und darüber anzusprechen sind.

Beispiel:

NameVirtualHost 192.168.0.102



<VirtualHost 192.168.0.102>

    ServerName www.example.com

    ServerAdmin    nimda@example.com

    DocumentRoot "/usr/local/www/main/"

    ErrorLog /var/log/httpd/example

</VirtualHost>



<VirtualHost 192.168.0.102>

    ServerName www.plemaxe.com

    ServerAdmin    nimda@plemaxe.com

    DocumentRoot "/usr/local/www/2nd/"

    ErrorLog /var/log/httpd/plemaxe

</VirtualHost>



 

Keine Kommentare:

Kommentar veröffentlichen