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 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ört
  • example.com — die Domain Ihrer Website
  • PHP-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 open_basedir aktiviert

Und so sollte es aussehen, wenn sie deaktiviert ist:

open_basedir deaktiviert open_basedir deaktiviert

Hilfe

Bei Fragen oder wenn Sie Unterstützung brauchen, erreichen Sie uns jederzeit über das Ticketsystem — wir helfen Ihnen gern weiter!

Hilfe benötigt?Unsere Ingenieure helfen Ihnen kostenlos bei jeder Frage in wenigen MinutenKontaktieren Sie uns