Wie kann man das Apache2 Root Verzeichnis ändern?
- Was versteht man unter dem Apache2 Root Verzeichnis?
- Wie findet man die aktuelle DocumentRoot Einstellung?
- Wie ändert man das DocumentRoot Verzeichnis?
- Was muss man nach der Änderung noch beachten?
- Fazit
Das Ändern des Root Verzeichnisses von Apache2 ist eine wichtige Aufgabe, wenn man den Speicherort der ausgelieferten Webseiten anpassen möchte. Standardmäßig verwendet Apache unter den meisten Linux-Distributionen ein bestimmtes Verzeichnis, wie zum Beispiel /var/www/html, als DocumentRoot. Es kann jedoch verschiedene Gründe geben, warum man dieses Verzeichnis ändern möchte, etwa um eine andere Struktur zu nutzen, aus Sicherheitsgründen oder um auf ein anderes Dateisystem zuzugreifen.
Was versteht man unter dem Apache2 Root Verzeichnis?
Das Root Verzeichnis, auch DocumentRoot genannt, ist der Pfad auf dem Server, in dem die Dateien liegen, die vom Apache-Webserver ausgeliefert werden. Wenn ein Benutzer eine Website anfragt, liefert Apache die Dateien aus diesem Verzeichnis aus. Beispielsweise zeigt unter http://example.com/ das Verzeichnis, das als DocumentRoot definiert ist, die Dateien, die im Browser angezeigt werden.
Wie findet man die aktuelle DocumentRoot Einstellung?
Die Konfiguration des Apache2 Webservers erfolgt über verschiedene Dateien, die sich je nach Betriebssystem und Distribution unterscheiden können. Unter Debian-basierten Systemen sind die Konfigurationsdateien meistens im Verzeichnis /etc/apache2/sites-available/ zu finden. Dort sind einzelne Dateien enthalten, die virtuelle Hosts beschreiben und auch die DocumentRoot Einstellung beinhalten.
Um die aktuelle DocumentRoot zu finden, öffnet man z.B. die Datei 000-default.conf mit einem Texteditor oder liest die Konfiguration mit dem Befehl apachectl -S, der einen Überblick über die Virtual Hosts und deren Dokumentenwurzeln gibt.
Wie ändert man das DocumentRoot Verzeichnis?
Um das DocumentRoot zu ändern, öffnet man die entsprechende Konfigurationsdatei des virtuellen Hosts. Dort ändert man die Zeile mit DocumentRoot /var/www/html auf das gewünschte neue Verzeichnis, zum Beispiel /srv/www/neuer-ordner.
Nach der Anpassung sollte man darauf achten, dass der neue Pfad existiert und die richtigen Zugriffsrechte besitzt, sodass Apache dort Dateien lesen kann. Es ist empfehlenswert, den Benutzer und die Gruppe des Apache-Prozesses auf das Verzeichnis anzupassen oder entsprechende Berechtigungen zu setzen.
Was muss man nach der Änderung noch beachten?
Nachdem die Konfiguration geändert wurde, sollte man unbedingt die Apache-Konfiguration auf Syntaxfehler überprüfen. Dies gelingt mit dem Befehl apachectl configtest. Wenn keine Fehler gemeldet werden, kann der Webserver neu gestartet oder neu geladen werden, um die Änderungen zu übernehmen. Das gelingt zum Beispiel mit systemctl restart apache2 oder service apache2 restart, abhängig vom System.
Es kann außerdem notwendig sein, SELinux oder AppArmor Einstellungen anzupassen, falls diese aktiviert sind, da Sicherheitsrichtlinien den Zugriff von Apache auf neue Verzeichnisse einschränken können.
Fazit
Das Ändern des Apache2 Root Verzeichnisses erfolgt über die Anpassung der DocumentRoot-Direktive im Konfigurationsfile des Webservers. Wichtig ist es, die Verzeichnisrechte korrekt zu setzen und nach der Änderung die Konfiguration zu überprüfen sowie den Server neu zu starten. So lässt sich der Webserver einfach an individuelle Bedürfnisse anpassen.
