Diesen Artikel bewerten :
Dieser Artikel war hilfreich für Sie ?
Ja
Nicht
Vous avez noté 0 étoile(s)
Sommaire
Procédure
Betroffener Dienst : gemeinsames Webhosting LWS Panel
Betroffenes Panel : LWS Panel
Stufe : mittel
Der Fehler open_basedir restriction in effect erscheint, wenn ein PHP-Skript versucht, auf eine Datei oder einen Ordner außerhalb des auf Ihrem Hosting erlaubten Bereichs zuzugreifen.
Er kann insbesondere nach der Migration einer Website auftreten, aufgrund eines in der Konfiguration gespeicherten alten Pfads, einer falsch konfigurierten Erweiterung oder eines benutzerdefinierten Skripts.
Bewahren Sie vor der Änderung eine Kopie der Datei auf. Außerdem benötigen Sie die vollständige Fehlermeldung, um den verweigerten Pfad und die PHP-Datei zu identifizieren, die das Problem verursacht.
Die Meldung kann zum Beispiel so aussehen:
Warning: include(): open_basedir restriction in effect.
File(/home/ancien-hebergeur/public_html/config.php)
is not within the allowed path(s):
(/var/www/exemple.com/htdocs/:/tmp/)
in /var/www/exemple.com/htdocs/index.php on line 24
Sie enthält mehrere nützliche Informationen:
/home/ancien-hebergeur/public_html/config.php ist die Datei, auf die das Skript [ADDRESS] ;/var/www/exemple.com/htdocs/ entspricht dem Bereich, in dem die Dateien Ihrer Website verwendet werden dürfen ;/var/www/exemple.com/htdocs/index.php ist das Skript [PERSON_NAME] versucht, die Datei zu öffnen ;line 24 zeigt die betreffende Zeile in diesem Skript an.In diesem Beispiel verwendet die Website noch einen Pfad aus einem alten Hosting. PHP blockiert daher den Zugriff auf die Datei.
Wenn Ihre Website nur eine weiße Seite oder einen Fehler 500 anzeigt, prüfen Sie die Protokolle des Hostings:
open_basedir restriction in effect.Die neuesten Zeilen befinden sich in der Regel am Ende des Protokolls.
Im LWS Panel werden die öffentlichen Dateien einer Website in der Regel in einem Verzeichnis dieses Typs abgelegt:
/var/www/votre-domaine.fr/htdocs/
Ersetzen Sie votre-domaine.fr durch den betreffenden Domainnamen.
Prüfen Sie anschließend über den Dateimanager oder per FTP, ob sich die gesuchte Datei [PERSON_NAME] einem ihrer Unterordner befindet.
Der falsche Pfad kann gespeichert sein:
Suchen Sie vorrangig nach dem charakteristischen Teil des alten Pfads, zum Beispiel:
/home/ancien-hebergeur/
Ändern Sie nicht wahllos die internen Dateien von WordPress, PrestaShop oder einer anderen Anwendung. Prüfen Sie zunächst die Konfiguration der Erweiterung oder des Moduls, die in der Fehlermeldung angegeben ist.
Ersetzen Sie den alten Pfad durch den tatsächlichen Pfad der Datei auf Ihrem LWS-Hosting.
Zum Beispiel:
Ancien chemin :
/home/ancien-hebergeur/public_html/cache/
Nouveau chemin :
/var/www/votre-domaine.fr/htdocs/cache/
In einem benutzerdefinierten PHP-Skript ist es oft besser, den Pfad ausgehend vom Verzeichnis des Skripts zu bilden, statt den vollständigen Serverpfad zu speichern.
Zum Beispiel:
require __DIR__ . '/config.php';
Diese Schreibweise ermöglicht es dem Skript, config.php in seinem eigenen Verzeichnis zu suchen.
Die Direktive open_basedir kann auf dem LWS Panel nicht über eine Datei .user.ini geändert oder deaktiviert werden.
Dieser Schutz darf nicht umgangen werden. Sie müssen den von der Website, dem Skript oder der Erweiterung verwendeten Pfad korrigieren.
Nachdem Sie den Pfad korrigiert haben, leeren Sie den Cache über die Oberfläche Ihres CMS oder Ihrer Anwendung.
Ein alter Pfad kann in einer Cache-Datei gespeichert bleiben, selbst nachdem die Konfiguration geändert wurde.
Wiederholen Sie genau die Aktion, die den Fehler verursacht hat: Öffnen Sie die betreffende Seite, senden Sie das Formular ab oder starten Sie den unterbrochenen Vorgang neu.
Prüfen Sie anschließend erneut die PHP-Protokolle. Es darf keine neue Zeile open_basedir restriction in effect erscheinen.
Die Korrektur ist abgeschlossen, wenn die betreffende Seite oder Funktion wieder funktioniert und in den PHP-Protokollen kein neuer Fehler open_basedir erscheint.
Ich sehe nur einen Fehler 500 oder eine weiße Seite
Die vollständige Meldung ist wahrscheinlich in den PHP-Protokollen gespeichert. Öffnen Sie im LWS Panel das Tool Apache-/PHP-Logs und wiederholen Sie dann den Fehler, bevor Sie das Protokoll aktualisieren.
Der angegebene Pfad entspricht meinem alten Hoster
Ein absoluter Pfad wurde während der Migration nicht aktualisiert. Suchen Sie diesen Pfad in den Konfigurationsdateien, den Einstellungen der Erweiterungen und den benutzerdefinierten Skripten.
Ersetzen Sie ihn durch den aktuellen Pfad Ihrer Website [ADDRESS] Panel.
Ich finde nicht, wo der Pfad gespeichert ist
Sehen Sie sich den Namen der PHP-Datei an, der am Ende der Fehlermeldung angezeigt wird. Er hilft oft dabei, die betroffene Anwendung, das Theme, die Erweiterung oder das Skript zu identifizieren.
Bei einer Erweiterung prüfen Sie zunächst ihre Einstellungen für Cache, Import, Sicherung oder temporäre Dateien.
Die Datei befindet sich im Ordner htdocs, [PERSON_NAME] der Fehler bleibt bestehen
Prüfen Sie, ob der vom Skript verwendete Pfad genau dem tatsächlichen Speicherort der Datei entspricht.
Eine symbolische Verknüpfung kann ebenfalls scheinbar auf eine Datei der Website verweisen, während PHP zu einem Speicherort außerhalb des erlaubten Bereichs geleitet wird. Ersetzen Sie in diesem Fall den Link durch einen direkten Zugriff auf eine Datei im Verzeichnis der Website.
Der Fehler tritt nach der Änderung erneut auf
Leeren Sie den Cache Ihrer Anwendung und wiederholen Sie dann das Problem. Prüfen Sie außerdem, ob der Pfad an mehreren Stellen gespeichert ist.
Diesen Artikel bewerten :
Dieser Artikel war hilfreich für Sie ?
Ja
Nicht
0mn von Lesen
Cloudflare Error 524: Ein Timeout aufgetreten
3mn von Lesen
Wie Sie einen 500-Fehler auf Ihrer Seite mit LWS Panel beheben können
9mn von Lesen
Wie kann ich einen HTTP-Fehlercode korrigieren?
0mn von Lesen
Fehler 404, was ist das, wie kann man ihn beheben