Virtuelle Rechner verwenden

WarnungWarnung
 

Wenn Sie das Apache-Konfigurationstool, ein mit Red Hat Linux geliefertes GUI-Dienstprogramm, verwenden möchten, kompilieren Sie Ihre eigenen Module nicht in den Apache Web-Server und bearbeiten Sie auch die Konfigurationsdatei httpd.conf des Apache Web-Servers nicht. Wenn Sie Apache Module hinzufügen oder httpd.conf bearbeiten möchten, verwenden Sie dagegen nicht das Apache-Konfigurationstool.

Weitere Informationen über das Apache-Konfigurationstool finden Sie im Offiziellen Red Hat Linux Handbuch Benutzerdefinierte Konfiguration.

Apache bietet die Möglichkeit zur Verwendung von virtuellen Rechnern, um verschiedene Server für verschiedene IP-Adressen, verschiedene Rechnernamen oder verschiedene Ports auf demselben Rechner zu benutzen. Wenn Sie virtuelle Rechner verwenden möchten, so finden Sie detaillierte Informationen in der Apache-Dokumentation oder unter http://httpd.apache.org/docs/vhosts/.

AnmerkungBitte beachten
 

Namensbasierte virtuelle Rechner können nicht zusammen mit dem Web-Server verwendet werden, weil der SSL-Handshake (der Zeitpunkt, wenn der Browser das Authentifizierungszertifikat des Secure Web-Servers annimmt) vor der HTTP-Anforderung stattfindet, die den richtigen namensbasierten virtuellen Rechner identifiziert. Wenn Sie namensbasierte virtuelle Rechner verwenden möchten, können Sie diese nur mit dem Web-Server verwenden, der ohne Verschlüsselung arbeitet.

Virtuelle Rechner werden in der Datei httpd.conf konfiguriert, wie in Abschnitt namens Konfigurationsanweisungen in httpd.conf beschrieben. Bitte lesen Sie dort nach, bevor Sie die Konfiguration der virtuellen Rechner auf Ihrem Rechner ändern.

Der virtuelle Rechner des Secure Web-Servers

In der Standardkonfiguration Ihres secure Web server wird ein unverschlüsselter und Secure Server ausgeführt. Beide Server verwenden dieselbe IP-Adresse und denselben Rechnernamen, warten jedoch an verschiedenen Ports auf Anforderungen. Außerdem ist der sichere Server ein virtueller Rechner. Mit dieser Konfiguration können Sie sowohl unverschlüsselte als auch sichere Dokumente auf effektivste Weise bereitstellen. Wie Ihnen wahrscheinlich bekannt ist, erfordern sichere HTTP-Übertragungen mehr Zeit als nicht verschlüsselte Übertragungen, da während der sicheren Transaktionen erheblich mehr Informationen ausgetauscht werden. Die Verwendung Ihres Secure Servers für unverschlüsselten Web-Datenverkehr ist daher nicht zu empfehlen.

Die Konfigurationsanweisungen für Ihren Secure Server sind innerhalb von Virtual Host-Tags in der Datei httpd.conf untergebracht. Wenn Sie die Konfiguration Ihres Secure Servers ändern möchten, müssen Sie die Konfigurationsanweisungen innerhalb der Virtual Host-Tags in der Datei httpd.conf anpassen. Wenn Sie bestimmte Funktionen für Ihren Secure Server aktivieren möchten (z.B. serverseitige Includes), müssen diese innerhalb der Virtual Host-Tags aktiviert werden, die Ihren Secure Server definieren.

Der unverschlüsselte Web-Server wird wie der "nichtvirtuelle" Rechner in der Datei httpd.conf konfiguriert. Anders ausgedrückt, die Konfigurationsoptionen des unverschlüsselten Web-Servers befinden sich außerhalb der Virtual Host-Tags in der Datei httpd.conf. Wenn Sie an der Konfiguration Ihres unverschlüsselten Web-Servers Änderungen vornehmen möchten, müssen Sie die Konfigurationsanweisungen außerhalb der Virtual Host-Tags in der Datei httpd.conf ändern.

Standardmäßig verwenden sowohl der sichere als auch der unverschlüsselte Web-Server dieselbe DocumentRoot. Diese Konfigurationsanweisung wird in der Datei httpd.conf angegeben. Anders ausgedrückt, der sichere und der unverschlüsselte Web-Server verwenden dasselbe Verzeichnis für die HTML-Dateien, die für Anforderungen bereitgestellt werden. Standardmäßig ist DocumentRoot auf /var/www/html eingestellt.

Um DocumentRoot so zu ändern, dass es nicht mehr gemeinsam vom sicheren und vom unverschlüsselten Server verwendet wird, ist eine der DocumentRoot-Anweisungen in der Datei httpd.conf zu ändern. DocumentRoot außerhalb der Virtual Host-Tags definiert die DocumentRoot für Ihren unverschlüsselten Web-Server. Wenn DocumentRoot innerhalb der Virtual Host-Tags steht, die Ihren Secure Server definieren, so definiert diese (offensichtlich) Ihren Secure Server.

Sie können den unverschlüsselten Web-Server auf Ihrem Rechner deaktivieren. Der sichere Server wartet am Port 443, dem Standardport für sichere Web-Kommunikation, auf Anforderungen. Der unverschlüsselte Web-Server wartet am Port 80, dem Standardport für unverschlüsselte Web-Kommunikation, auf Anforderungen. Um für den unverschlüsselten Server die Annahme von Anforderungen zu deaktivieren, ist in der Datei httpd.conf folgende Zeile zu suchen:

Port 80

Ändern Sie diese Zeile folgendermaßen:

Port 443

Kommentieren Sie dann die Zeile Listen 80 aus.

Nachdem diese zwei Schritte ausgeführt sind, nimmt Ihr Web-Server Verbindungen an Port 443 an, dem Standardport für sichere Web-Kommunikation. An Port 80, dem Standardport für unverschlüsselte Verbindungen, werden vom Server jedoch keine Verbindungen angenommen. Der unverschlüsselte Web-Server ist damit praktisch deaktiviert.

Einrichten von virtuellen Rechnern

Die meisten Benutzer verwenden secure Web server wahrscheinlich in seiner Standardkonfiguration. Daher werden die integrierten Funktionen für virtuelle Rechner verwendet, eine Bearbeitung der Anweisungen für virtuelle Rechner in der Datei httpd.conf ist jedoch nicht erforderlich. Sie können virtuelle Rechner aber auch aus anderen Gründen verwenden.

Zum Erstellen eines virtuellen Rechners müssen entweder die in der Datei httpd.conf als Beispiel enthaltenen Virtual Host-Zeilen geändert werden, oder Sie erstellen Ihren eigenen Virtual Host-Abschnitt. Beachten Sie bitte, dass namensbasierte virtuelle Rechner nicht mit dem Secure Server zusammen funktionieren — wenn SSL-fähige virtuelle Rechner benötigt werden, müssen Sie IP-Adressen-basierte virtuelle Rechner verwenden. Der unverschlüsselte Server unterstützt jedoch sowohl IP-Adressen- als auch namensbasierte virtuelle Rechner.

Hier die Beispielzeilen für den virtuellen Rechner:

#<VirtualHost ip.address.of.host.some_domain.com>
#    ServerAdmin webmaster@host.some_domain.com
#    DocumentRoot /www/docs/host.some_domain.com
#    ServerName host.some_domain.com
#    ErrorLog logs/host.some_domain.com-error_log
#    CustomLog logs/host.some_domain.com-access_log common
#</VirtualHost>

Entfernen Sie das Kommentarzeichen # vom Beginn jeder Zeile. Tragen Sie dann in jeder Zeile die für Ihren Rechner und/oder virtuellen Rechner zutreffenden Informationen ein.

In der ersten Zeile ist ip.address.of.host.some_domain.com in die IP-Adresse Ihres Servers zu ändern. Ändern Sie ServerName in einen gültigen DNS-Namen für den virtuellen Rechner. (Also nicht einfach etwas erfinden. Fragen Sie Ihren Systemadministrator, wenn Sie nicht wissen, wie Sie an einen gültigen Domänennamen gelangen können.)

Außerdem muss für eine der NameVirtualHost-Zeilen in der Datei httpd.conf das Kommentarzeichen entfernt werden:

#NameVirtualHost 12.34.56.78:80
#NameVirtualHost 12.34.56.78

Entfernen Sie in einer der Zeilen das Kommentarzeichen, und ändern Sie die IP-Adresse in die IP-Adresse (und den Port, falls erforderlich) des virtuellen Rechners.

Zwischen den Virtual Host-Tags können je nach dem Zweck des virtuellen Rechners viele andere Konfigurationsanweisungen angegeben werden.

Wenn Sie einen virtuellen Rechner einrichten und dieser an einem Port auf Anforderungen warten soll, der nicht der Standardport ist (80 ist der Standardport für unverschlüsselte Web-Kommunikation, 443 der Standardport für sichere Web-Kommunikation) müssen Sie für diesen Port einen virtuellen Rechner einrichten und eine Listen-Anweisung in die Datei httpd.conf einfügen, die diesem Port entspricht.

Um einen virtuellen Rechner speziell für diesen Port einzurichten, ist in der ersten Zeile der Konfiguration für den virtuellen Rechner die Portnummer anzugeben. Die erste Zeile sollte etwa folgendermaßen aussehen:

<VirtualHost ip_address_of_your_server:12331>

Diese Zeile würde einen virtuellen Rechner erzeugen, der an Port 12331 auf Anforderungen wartet. Geben Sie hier für 12331 die von Ihnen gewünschte Portnummer an.

Fügen Sie in der Datei httpd.conf unter den Listen-Zeilen eine Zeile wie die folgende ein, die Ihren Web-Server anweist, an Port 12331 auf Anforderungen zu warten:

Listen 12331

Starten Sie httpd neu, um einen neuen virtuellen Rechner zu starten. Weitere Informationen hierüber finden Sie unter Abschnitt namens Starten und Anhalten von httpd.

Vollständigere Informationen zum Erstellen und Konfigurieren von namensbasierten und IP-Adressen-basierten virtuellen Rechnern finden Sie im Web unter http://www.apache.org/docs/vhosts/index.html. Weitere Einzelheiten zur Verwendung virtueller Rechner finden Sie in der Dokumentation der Apache Group zu virtuellen Rechnern.