ホームページ  >  記事  >  バックエンド開発  >  PHP 実装は、クライアントがプロキシ サーバーを使用しているかどうかとその匿名性レベルを検出します。PHP プロキシ サーバー_PHP チュートリアル

PHP 実装は、クライアントがプロキシ サーバーを使用しているかどうかとその匿名性レベルを検出します。PHP プロキシ サーバー_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:10:00811ブラウズ

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
訪問者に、プロキシ サーバーを使用していることを伝えますが、実際の IP ではなく偽のランダム IP を作成して騙します。

5. 高匿名性プロキシ サーバーの使用: 高匿名性プロキシ

REMOTE_ADDR = プロキシサーバーのIP
HTTP_VIA = 値がないか、表示されません
HTTP_X_FORWARDED_FOR = 値がないか、表示されません
プロキシ サーバーを使用してオブジェクトに直接アクセスしているのと同じように、すべての情報をプロキシ サーバーの情報で完全に置き換えます。

さらに、代理裁判官を通じてその他の参考判決情報を要約し、実際に使用することもできます。

最後に、参考のために php の例を書きます:

コードをコピーします コードは次のとおりです:

if(!empty($_SERVER['HTTP_VIA'])) //プロキシが使用されます
{
If(!isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
//匿名プロキシ //プロキシ IP アドレスは $_SERVER['REMOTE_ADDR'] です
}
それ以外
{
//透過的プロキシ 透過的プロキシ サーバー
//プロキシ IP アドレスは $_SERVER['REMOTE_ADDR'] です
//実際の IP アドレスは $_SERVER['HTTP_X_FORWARDED_FOR'] です
}
}
else //プロキシなし、または匿名性の高いプロキシ
{
//実際の IP アドレスは $_SERVER['REMOTE_ADDR'] です
}

http://www.bkjia.com/PHPjc/939413.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/939413.html技術記事 PHP は、クライアントがプロキシ サーバーを使用しているかどうかの検出とその匿名性レベルを実装しています。クライアントがプロキシ サーバーを使用しているかどうかを判断するために、PHP プロキシ サーバーはクライアントから送信された環境変数情報を使用できます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。