Deaktivieren von open_basedir in Hestia CP
So deaktivieren Sie die open_basedir-Beschränkung für eine bestimmte Website.
Hestia CP ist eine der beliebtesten und benutzerfreundlichsten Hosting-Verwaltungspanels überhaupt. Sie deckt alles ab — von Websites und E-Mail über Datenbanken, SSL-Zertifikate und Dateiverwaltung bis hin zu geplanten Aufgaben.
Was ist open_basedir und warum sollte man es deaktivieren?
Die Direktive open_basedir schränkt PHP-Skripte darauf ein, nur auf Dateien innerhalb des eigenen Site-Stammverzeichnisses zuzugreifen. Das ist eine sinnvolle Sicherheitsmaßnahme, die Websites voneinander isoliert — jede sieht nur ihre eigenen Dateien und kann den Rest des Servers nicht beeinflussen.
Gelegentlich steht sie jedoch im Weg. Manche Skripte müssen legitim auf Dateien außerhalb des Site-Stammverzeichnisses zugreifen, und wenn open_basedir dies blockiert, erscheint in den Logs oder direkt auf der Seite ein Fehler wie dieser:
open_basedir restriction in effect
In diesem Fall können Sie die Einschränkung für die betroffene Website deaktivieren, ohne den Rest Ihrer Konfiguration anzutasten.
open_basedir deaktivieren
Die PHP-FPM-Vorlagendateien befinden sich hier:
/usr/local/hestia/data/templates/web/php-fpm/
Jede Datei entspricht einer bestimmten PHP-Version. Für PHP 8.0 heißt die Vorlage beispielsweise PHP-8_0.tpl.
PHP-FPM-Vorlagendateien in Hestia CP
Öffnen Sie die Vorlage für Ihre PHP-Version und suchen Sie diese Zeile:
php_admin_value[open_basedir] = ...
Kommentieren Sie sie aus, indem Sie am Anfang ein Semikolon einfügen:
;php_admin_value[open_basedir] = ...
Das können Sie manuell in einem beliebigen Texteditor erledigen (nano, vim) — oder führen Sie einfach den folgenden Befehl aus, der dies automatisch übernimmt.
Achten Sie darauf, den Dateinamen anzupassen, wenn Sie eine andere PHP-Version verwenden. Das folgende Beispiel bezieht sich auf PHP 8.0.
sed -i 's/php_admin_value\[open_basedir\]/;php_admin_value\[open_basedir\]/g' /usr/local/hestia/data/templates/web/php-fpm/PHP-8_0.tpl
Wenn Sie die Datei manuell bearbeitet haben, speichern Sie sie mit Ctrl + O → Enter → Ctrl + X.
Änderungen übernehmen
Nachdem die Vorlage aktualisiert wurde, müssen die Änderungen auf die Website übertragen und PHP neu geladen werden. Führen Sie den folgenden Befehl aus und ersetzen Sie die drei Parameter durch Ihre eigenen Werte:
admin— der Hestia-CP-Benutzername, dem die Website gehörtexample.com— die Domain Ihrer WebsitePHP-8_0— der Name der soeben bearbeiteten Vorlage
v-change-web-domain-backend-tpl admin example.com PHP-8_0
Ergebnis prüfen
Überprüfen Sie, ob open_basedir nicht mehr aktiv ist, indem Sie eine phpinfo()-Seite auf Ihrer Website aufrufen.
So sieht es aus, wenn die Einschränkung aktiviert ist:
open_basedir aktiviert
Und so sollte es aussehen, wenn sie deaktiviert ist:
open_basedir deaktiviert
Hilfe
Bei Fragen oder wenn Sie Unterstützung brauchen, erreichen Sie uns jederzeit über das Ticketsystem — wir helfen Ihnen gern weiter!