毎日の PHP 開発プロセスでは、必要なファイルやリソースを見つけるためにブラウザでファイル ディレクトリ構造を表示することが必要になることがよくあります。ただし、これによりディレクトリ構造が権限のない訪問者に公開されることになり、セキュリティ上の脅威が生じる可能性があります。そのため、ブラウザでのディレクトリファイルの表示を禁止することが基本的なセキュリティ対策となっています。 PHP には、ディレクトリ ファイルの表示を抑制する簡単な方法がいくつかあります。
使用方法 1: .htaccess ファイルで構成する
最も一般的な方法は、Web サイトの .htaccess ファイルにルールを追加して、ブラウザーがディレクトリ ファイルを表示しないようにすることです。 .htaccess ファイルは、Apache Web サーバーの構成ファイルです。仮想ホストまたは特定のディレクトリにパラメータを設定して、権限、ファイアウォール、ディレクトリ アクセスなどの設定を制御できます。
次のコードを使用して、ディレクトリ ファイルを .htaccess ファイルに禁止するルールを追加できます。
Options -Indexes
上記のコードは、ディレクトリ ファイルへのブラウザのアクセスを無効にします。つまり、ディレクトリにアクセスすると、「403 Forbidden」エラー メッセージが返されます。
方法 2: PHP ファイルにコードを追加する
.htaccess ファイルの構成に加えて、PHP ファイルにコードを埋め込んで同じ効果を実現することもできます。ディレクトリ ファイルを禁止する必要がある PHP ファイルに、次のコードを追加します。
// ディレクトリ ファイルの表示を抑制 list
header('Content-Type:text/html ; charset=utf-8');
if(is_dir($_SERVER['PATH_INFO'])) {
header('HTTP/1.1 403 Forbidden'); echo 'Access Denied'; exit();
}
?>
上記のコードでは, まず、アクセスされたパスがディレクトリであるかどうかを判断します。その場合、「403 Forbidden」エラー メッセージが送信され、「Access Denied」メッセージが出力され、ブラウザはディレクトリ ファイルのリストを表示できなくなります。
使用方法 3: Web サーバーの構成を変更する
最後に、もう 1 つの方法は、Web サーバーの構成を変更することです。 Apache Web サーバーの場合は、Apache のデフォルト設定ファイル /etc/httpd/conf/httpd.conf を変更できます。次のコードを見つけます:
Options Indexes FollowSymLinks AllowOverride All Require all granted
「Options」の後のパラメータで、ブラウザーにディレクトリ ファイルが表示されないようにするには、[インデックス] オプションを削除します。
概要
.htaccess ファイルで構成するか、PHP ファイルにコードを埋め込むか、Web サーバーの構成を変更することで、ブラウザーにディレクトリ ファイル リストが表示されないようにすることができます。 。このセキュリティ対策により、ディレクトリ構造とファイル リソースを違法なアクセスやダウンロードから保護できます。したがって、PHP プログラムを作成する場合は、Web セキュリティ保護を強化するために次の措置を講じることをお勧めします。
以上がPHPでディレクトリファイルの表示を無効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。