一般的に、ユーザーの実際の IP を取得するコードは次のようになります...
/** * 获取 远程访问者的IP地址 * * @return string */function real_ip_addr(){ static $remote_ip_address = null; if (!$remote_ip_address){ $vars = array( val($_SERVER,'HTTP_CLIENT_IP'), val($_SERVER,'HTTP_X_FORWARDED_FOR'), val($_SERVER,'REMOTE_ADDR'), ); foreach ($vars as $var){ if (!empty($var)) { $remote_ip_address = $var; } continue; } if (empty($remote_ip_address)) $remote_ip_address = 'unknown'; } return $remote_ip_address;}
?
「クライアント」IP に関しては、通常、$_SERVER['HTTP_CLIENT_IP']、$_SERVER['X_FORWARDED_FOR']、$_SERVER['REMOTE_ADDR'] の 3 つの環境変数が使用されます。実際には、これら 3 つの環境変数には使用可能な制限があります。 。最初の 2 つは自由に鍛造できます。送信される http ヘッダーに対応する値を設定するだけです。どの文字でも問題ありません。ユーザーが匿名プロキシを使用する場合、この変数にはプロキシ IP
?
が表示されます。以下は偽造です:
?
:-)...
?
?
:-) ちょっとしたアイデア
1 階 vb2005xu 19 時間前
http://www.webshell.cc/