Das DocumentRoot ist das Verzeichnis, aus dem der Webserver die Dateien einer Website ausliefert. Alles darin ist über das Netz erreichbar, alles darüber nicht. Die Adresse einer Datei ergibt sich aus ihrem Pfad unterhalb dieses Verzeichnisses.
- DocumentRoot
Das Verzeichnis, aus dem der Webserver die Dateien einer Website ausliefert.
Beispiel: „Das DocumentRoot zeigt auf den Ordner public, der Rest des Projekts liegt eine Ebene darüber.“Auch: Webroot, Dokumentenwurzel, Serverwurzel. Verbreitete Pfade sind
/var/www/htmlund, im geteilten Hosting,~/httpdocsoder~/public_html.Abgrenzung zum Projektverzeichnis: Das Projekt umfasst Programmcode, Abhängigkeiten und Konfiguration. Das DocumentRoot ist der kleine Teil davon, der nach außen gehört.
Warum nur ein Teil des Projekts im DocumentRoot liegt
Weil alles darin abrufbar ist, auch was niemand abrufen soll. Eine Konfigurationsdatei mit Datenbankpasswort, ein Verzeichnis mit Abhängigkeiten oder eine Sicherungsdatei sind über die Adresse erreichbar, sobald sie dort liegen.
Heutige Anwendungen legen deshalb nur den Einstiegspunkt und die Dateien für den Browser in einen Ordner, der häufig public heißt. Der Rest liegt eine Ebene darüber und bleibt unerreichbar.
Was im DocumentRoot regelmäßig falsch landet
Sicherungsdateien und Archive. Eine vergessene Datei mit der Endung .zip im Wurzelverzeichnis ist eine vollständige Kopie der Website, und die Namen dafür sind kurz und werden abgefragt.
Dazu kommen Verzeichnisse aus der Versionsverwaltung und Editordateien mit Zugangsdaten. Beides gehört von der Auslieferung ausgenommen, notfalls über .htaccess.
Wo das DocumentRoot eingestellt wird
Im Virtual Host des Webservers, bei Apache unter der gleichnamigen Angabe und bei nginx unter root.
Im geteilten Hosting übernimmt das die Oberfläche des Anbieters, meist über ein Feld je Domain. Lässt sie das Verzeichnis nicht ändern, ist eine heutige Anwendung dort nur mit Umwegen zu betreiben.