ホームページ >バックエンド開発 >PHPチュートリアル >$_SERVER['REMOTE_ADDR'] はクライアント IP の信頼できるソースですか?

$_SERVER['REMOTE_ADDR'] はクライアント IP の信頼できるソースですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-17 22:04:02190ブラウズ

Is $_SERVER['REMOTE_ADDR'] a Reliable Source for Client IP?

$_SERVER['REMOTE_ADDR'] に依存できますか?

Web 開発では、$_SERVER['REMOTE_ADDR'] が IP を保持しますリクエストを行っているクライアントのアドレス。

信頼できるか?

はい、$_SERVER['REMOTE_ADDR'] を信頼することは一般的に安全であると考えられています。これは TCP 接続の送信元 IP アドレスを表し、HTTP ヘッダーを変更して操作することはできません。

リバース プロキシに関する注意

まれに、リバース プロキシの場合、REMOTE_ADDR はユーザーの IP ではなく、プロキシ サーバーの IP を反映します。このシナリオでは、ユーザーの IP は HTTP ヘッダー (X-Forwarded-For など) を通じて利用できる場合があります。

使用例

次のコードを考えてみましょう。

if ($_SERVER['REMOTE_ADDR'] == '222.222.222.222') { // my ip address
    $grant_all_admin_rights = true;
}

このコードは、特定の IP アドレスに基づいて管理者権限を付与します。これは簡略化された例ですが、アクセス制御に $_SERVER['REMOTE_ADDR'] を使用することが一般的に受け入れられています。

以上が$_SERVER['REMOTE_ADDR'] はクライアント IP の信頼できるソースですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。