ホームページ > バックエンド開発 > PHPチュートリアル > 含まれている PHP ファイルへの直接アクセスを防ぐにはどうすればよいですか?

含まれている PHP ファイルへの直接アクセスを防ぐにはどうすればよいですか?

DDD
リリース: 2025-01-01 09:11:15
オリジナル
366 人が閲覧しました

How Can I Prevent Direct Access to Included PHP Files?

PHP での直接ファイル アクセスの防止

Web 開発の世界では、機密ファイル、特に専用ファイルへのアクセスを制御することが不可欠です。他のスクリプトに含めるために。このようなファイルに URL 経由で直接アクセスできる場合、一般的な問題が発生し、セキュリティ上の脆弱性が発生する可能性があります。

この懸念に対処するために、PHP は、含まれるファイルへの直接アクセスを制限できる簡単なソリューションを提供します。単純な条件チェックを実装することで、これらのファイルを直接実行しようとする不正な試みを阻止できます。

この保護を効果的に実装するには、次の手順に従います。

1.リファラーソースの確認

インクルードとしてのみ使用する予定の PHP ファイルを開きます。次のコードをファイルの先頭に追加します:

if (!isset($_SERVER['HTTP_REFERER'])) {
    die('Direct access not permitted');
}

$current_url = $_SERVER['HTTP_REFERER'];
$allowed_url = 'https://example.com/page_that_includes_this_file.php';

if ($current_url != $allowed_url) {
    die('Direct access not permitted');
}
ログイン後にコピー

2.定数の定義

保護されたファイルを含む PHP ファイルの先頭に次のコードを追加します:

define('MY_CONSTANT', TRUE);
ログイン後にコピー

説明:

コードの最初の部分は、リクエストが予想される参照 URL (この場合、ファイルを含む必要があるページ) から来たかどうかをチェックします。リファラーが設定されていない場合、または許可された URL と一致しない場合は、エラー メッセージが生成されます。

コードの次の部分では、インクルード ファイル内の「MY_CONSTANT」という名前の定数を定義します。インクルード ファイルを含むページでは、この定数を TRUE に定義して、ページがファイルに合法的にアクセスできるようにします。

このメカニズムを実装することで、インクルード ファイルへの直接アクセスを効果的に防止し、その整合性と整合性を確保できます。不正な実行を防止します。

以上が含まれている PHP ファイルへの直接アクセスを防ぐにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート