ホームページ > バックエンド開発 > PHPチュートリアル > PHPでIPを取得する通常の方法は何を意味しますか?

PHPでIPを取得する通常の方法は何を意味しますか?

WBOY
リリース: 2016-06-13 13:24:17
オリジナル
900 人が閲覧しました

PHPでIPを取得する一般的な方法は何を意味しますか?
質問 1:
IP を取得する一般的な方法は、$_SERVER 配列の "HTTP_CLIENT_IP"、"HTTP_X_FORWARDED_FOR"、および "REMOTE_ADDR" の 3 つの要素を使用することです。
これら 3 つの要素の値は何を表しますか?
オンラインで確認したのは次のとおりです:
HTTP_CLIENT_IP: クライアント IP を表します
HTTP_X_FORWARDED_FOR: プロキシ経由でインターネットにアクセスするクライアント IP
REMOTE_ADDR: 接続 IP
私の理解は次のとおりです:
( 1) クライアントがインターネットに直接接続されている場合:
HTTP_CLIENT_IP: クライアント IP を表示
HTTP_X_FORWARDED_FOR: なし
REMOTE_ADDR: クライアント IP を表示
(2) クライアントがプロキシ サーバーを経由している場合:
HTTP_CLIENT_IP: なし
HTTP_X_FORWARDED_FOR: クライアント IP を表示
REMOTE_ADDR: プロキシ サーバー IP を表示

これは正しいですか?


質問 2:
クライアントの IP 情報はヘッダーを通じて送信されますか?では、なぜ Firefox を使用してヘッダーをチェックすると関連情報が表示されないのでしょうか?


ありがとうございます!

-----解決策--------------------------------
1、そのはずです、オンライン 必要に応じて使用できる古典的な if ステートメントがありますが、これは紳士のみを識別でき、悪役には無効です。
2、HTTP_X_FORWARDED_FOR、これは利用できるはずです。他の 2 つの REMOTE_ADDR と CLIENT_IP は、どちらも accept によって取得される IP であり、HTTP_XFORWARDED_FOR の有無によって解釈が異なるだけだと個人的には感じています。
------解決策------------------
REMOTE_ADDR のみがユーザーの実際のパブリック ネットワークの入り口を反映します
その他はさまざまなネットワーク デバイスに添付されたコンテンツであり、参照のみです
それらは自由に構築できるため

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