Heim  >  Artikel  >  Backend-Entwicklung  >  Konfiguration von open_basedir unter PHP

Konfiguration von open_basedir unter PHP

不言
不言Original
2018-04-23 10:06:562939Durchsuche

Der Hauptinhalt dieses Artikels befasst sich mit der Konfiguration von open_basedir unter PHP. Jetzt kann ich ihn mit Ihnen teilen.

Nach dem Herunterladen von YII2.0 Nachdem ich Nginx erfolgreich konfiguriert hatte, stellte ich fest, dass es immer noch nicht zugänglich war. Ich überprüfte das Fehlerprotokoll und stellte fest, dass die Fehlermeldung „require(): open_basedir“ in Kraft war. Also habe ich online gesucht und festgestellt, dass das PHP-Konfigurationselement open_basedir den Pfad einschränkt, auf den require() zugreift.

open_basedir beschränkt die Dateien, die von PHP geöffnet werden können, auf den angegebenen Verzeichnisbaum, einschließlich der Datei selbst. Wenn ein Programm eine Datei beispielsweise mit fopen() oder file_get_contents() öffnet, wird der Speicherort der Datei überprüft. Wenn sich die Datei außerhalb des angegebenen Verzeichnisbaums befindet, weigert sich das Programm, sie zu öffnen.

In Linux-Systemen wird open_basedir hauptsächlich in den Dateien php.ini und fastcgi.conf konfiguriert. Die Konfiguration in php.ini lautet wie folgt: open_basedir="angegebenes Verzeichnis"; folgt: fastcgi_param PHP_VALUE "open_basedir = Verzeichnis angeben";

Unter Windows wird es hauptsächlich in der http.conf-Datei von php.ini und Apache konfiguriert. Die Konfiguration in http.conf ist wie folgt: php_admin_value open_basedir „Verzeichnis angeben“.

Das mit open_basedir angegebene Limit ist eigentlich ein Präfix, kein Verzeichnisname. Mit anderen Worten: open_basedir=/home/fdipzone ermöglicht auch den Zugriff auf /home/fdipzone_abc. Wenn Sie den Zugriff auf ein Verzeichnis einschränken möchten, verwenden Sie bitte einen Schrägstrich am Ende des Pfadnamens, zum Beispiel: open_basedir=“/home/fdipzone /“. Wenn Sie mehrere Verzeichnisse einrichten möchten, verwendet Windows; zum Trennen von Verzeichnissen und Linux verwendet: zum Trennen von Verzeichnissen.

Die Verwendung von open_basedir kann die Verzeichnisse und Dateien einschränken, die das Programm ausführen kann, und die Systemsicherheit verbessern. Dies beeinträchtigt jedoch die E/A-Leistung und führt zu einer Verlangsamung der Systemausführung. Daher ist es notwendig, Sicherheit und Leistung entsprechend den spezifischen Anforderungen abzuwägen.


Das obige ist der detaillierte Inhalt vonKonfiguration von open_basedir unter PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn