この記事では、主に PHP での open_basedir の設定を紹介します。これには、必要な友達が参考にできるように共有します。まだアクセスできません。エラー ログを確認すると、エラー メッセージに require(): open_basedir 制限が有効であることがわかります。そこでオンラインで検索したところ、PHPの設定項目open_basedirがrequire()でアクセスするパスを制限していることがわかりました。
open_basedir は、php が開くことができるファイルを、ファイル自体を含む指定されたディレクトリ ツリーに制限します。プログラムが fopen() や file_get_contents() などを使用してファイルを開くと、ファイルの場所がチェックされます。ファイルが指定されたディレクトリ ツリーの外にある場合、プログラムはそのファイルを開くことを拒否します。
Linux システムでは、open_basedir は主に php.ini および fastcgi.conf ファイルで構成されます。php.ini の構成は次のとおりです。 open_basedir="指定されたディレクトリ"; fastcgi_param PHP_VALUE "open_basedir=指定されたディレクトリ" ;
Windowsでは主にphp.iniとapacheのhttp.confファイルで設定されます http.conf内の設定は以下の通りです:
php_admin_value open_basedir "指定されたディレクトリ"。open_basedir で指定される制限は、実際にはディレクトリ名ではなくプレフィックスです。つまり、open_basedir=/home/fdipzone では、/home/fdipzone_abc へのアクセスも許可されます。ディレクトリへのアクセスを制限する場合は、パス名の末尾にスラッシュを使用してください (例: open_basedir=”/home/fdipzone)。 /」。複数のディレクトリを設定する場合、Windows では; を使用してディレクトリを分割し、Linux では: を使用してディレクトリを分割します。
open_basedir を使用すると、プログラムが操作できるディレクトリとファイルを制限し、システムのセキュリティを向上させることができます。ただし、I/O パフォーマンスに影響し、システムの実行速度が低下するため、特定のニーズに応じてセキュリティとパフォーマンスのバランスを取る必要があります。
以上がphpでのopen_basedirの設定の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。