ホームページ >バックエンド開発 >PHPチュートリアル >クライアントがプロキシ サーバーとその匿名性レベルを使用するかどうかを判断するための PHP サンプル共有_PHP チュートリアル
クライアントがプロキシサーバーを使用しているかどうかは、クライアントから送信される環境変数情報から判断できます。
具体的には、HTTP_VIA フィールドを確認してください。このフィールドが設定されている場合は、クライアントがプロキシ サーバーを使用していることを意味します。
匿名性レベルは以下の表を参照して判断できます。
アプリケーションの例を示します。プロキシを切断して効果を試すことができます: http://ip.mixsec.org/
1. プロキシサーバーを使用しない場合:
REMOTE_ADDR = あなたのIP
HTTP_VIA = 値なしまたは表示なし
HTTP_X_FORWARDED_FOR = 値なしまたは表示なし
2. 透過的プロキシサーバーの使用状況: 透過的プロキシ
REMOTE_ADDR = プロキシ サーバーの IP
HTTP_VIA = プロキシ サーバーの IP (補足: このフィールドはプロキシ サーバーによって入力され、ゲートウェイ情報などが入力される場合もあります)
HTTP_X_FORWARDED_FOR = 実際の IP
このタイプのプロキシ サーバーは引き続き、あなたへの情報 オブジェクトにアクセスすることは、本当のアイデンティティを隠すという目的を達成することはできません。
3. 通常の匿名プロキシ サーバーの使用状況: 匿名プロキシ
REMOTE_ADDR = プロキシ サーバー IP
HTTP_VIA = プロキシ サーバー IP (補足: このフィールドはプロキシ サーバーによって入力され、場合によってはゲートウェイ情報などが入力されます)
HTTP_X_FORWARDED_FOR = プロキシ サーバーの IP
実際の IP は隠しますが、アクセスするためにプロキシ サーバーを使用していることはアクセス相手に明らかにします。
4. 欺瞞的なプロキシサーバーの使用: プロキシの歪曲
REMOTE_ADDR = プロキシサーバーの IP
HTTP_VIA = プロキシサーバーの IP (補足: このフィールドはプロキシサーバーによって入力され、場合によってはゲートウェイ情報などが入力されます)
HTTP_X_FORWARDED_FOR = ランダムIP
Tell オブジェクトにアクセスするにはプロキシ サーバーを使用しますが、実際の IP の代わりに偽のランダム IP を作成して騙します。
5. 高匿名性プロキシサーバーを使用する状況: 高匿名性プロキシ
REMOTE_ADDR = プロキシサーバー IP
HTTP_VIA = 値なしまたは表示なし
HTTP_X_FORWARDED_FOR = 値なしまたは表示なし
すべての情報をプロキシサーバーの情報に完全に置き換えます。そのプロキシ サーバーを使用してオブジェクトに直接アクセスしています。
さらに、代理裁判官を通じてその他の参考判決情報を要約し、実際に使用することもできます。
最後に、参考のために php の例を書きます: