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

Susan Sarandon
リリース: 2024-11-12 00:36:03
オリジナル
748 人が閲覧しました

How to Prevent Direct Access to Files Accessed via AJAX in PHP?

AJAX 経由でアクセスされるファイルへの直接アクセスの防止

「func.php」などの AJAX リクエストを通じて PHP ファイルにアクセスする場合、そのファイルに直接アクセスすると、セキュリティ上の懸念が生じる可能性があります。この問題に対処するには、AJAX リクエストと直接アクセス試行を区別するメカニズムを実装することが重要です。

効果的な解決策の 1 つは、「HTTP_X_REQUESTED_WITH」サーバー変数を活用することです。ほとんどの AJAX フレームワークは、このヘッダーを「XMLHttpRequest」に設定し、本物の AJAX リクエストと直接ブラウザー アクセスを区別する方法を提供します。このヘッダー チェックは、次のように PHP ファイルに実装できます:

if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')) {
    // Allow access...
} else {
    // Ignore or deny access...
}
ログイン後にコピー

このチェックを実装すると、正当な AJAX リクエストのみが指定されたファイルにアクセスできるようになり、不正な直接アクセスからファイルを保護できます。

さらに、セキュリティを強化するために、次の JavaScript コードを使用して、AJAX リクエストに「X-Requested-With」ヘッダーを手動で設定できます。

var xhrobj = new XMLHttpRequest();
xhrobj.setRequestHeader("X-Requested-With", "XMLHttpRequest");
ログイン後にコピー

この手順により、直接攻撃に対する保護がさらに強化されます。ファイルアクセス。

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

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