Configuration de open_basedir sous php

不言
Libérer: 2023-03-24 16:40:02
original
2940 Les gens l'ont consulté

Le contenu principal de cet article concerne la configuration d'open_basedir sous PHP. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Après avoir téléchargé le YII2.0. framework et après avoir configuré avec succès nginx, j'ai constaté qu'il était toujours inaccessible. J'ai vérifié le journal des erreurs et j'ai constaté que le message d'erreur incluait la restriction require(): open_basedir en vigueur. J'ai donc cherché en ligne et découvert que l'élément de configuration PHP open_basedir limitait le chemin accessible par require().

open_basedir limite les fichiers pouvant être ouverts par php à l'arborescence de répertoires spécifiée, y compris le fichier lui-même. Lorsqu'un programme ouvre un fichier en utilisant, par exemple, fopen() ou file_get_contents(), l'emplacement du fichier est vérifié. Lorsque le fichier se trouve en dehors de l'arborescence de répertoires spécifiée, le programme refusera de l'ouvrir.

Dans les systèmes Linux, open_basedir est principalement configuré dans les fichiers php.ini et fastcgi.conf. La configuration dans php.ini est la suivante : open_basedir="répertoire spécifié" ; suit : fastcgi_param PHP_VALUE "open_basedir =Specify directory";

Sous Windows, il est principalement configuré dans le fichier http.conf de php.ini et apache La configuration dans http.conf est la suivante : php_admin_value open_basedir "Spécifier le répertoire".

La limite spécifiée avec open_basedir est en fait un préfixe, pas un nom de répertoire. En d'autres termes, open_basedir=/home/fdipzone autorisera également l'accès à /home/fdipzone_abc. Si vous souhaitez limiter l'accès à un répertoire, veuillez utiliser une barre oblique pour terminer le nom du chemin, par exemple : open_basedir=”/home/fdipzone. /”. Si vous souhaitez configurer plusieurs répertoires, window utilise ; pour séparer les répertoires et Linux utilise : pour séparer les répertoires.

L'utilisation d'open_basedir peut limiter les répertoires et les fichiers que le programme peut exploiter et améliorer la sécurité du système. Cependant, cela affectera les performances des E/S et entraînera un ralentissement de l'exécution du système. Il est donc nécessaire d'équilibrer la sécurité et les performances en fonction des besoins spécifiques.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal