プロキシの使用にもかかわらず実際の訪問者の IP アドレスを取得する
訪問者の IP アドレスを取得するために一般的に使用される PHP コードは次のとおりです:
ただし、プロキシが動作している場合、この方法では真の IP を取得できません。この問題の解決策を求めて、別のアプローチを詳しく見てみましょう。
IP 決定のためのカスタム PHP 関数
提供された PHP コードは、CloudFlare 接続を考慮した包括的なソリューションを提供します。およびその他のさまざまな要素:
function getUserIP()
{
// Handle CloudFlare connections
if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
$_SERVER['HTTP_CLIENT_IP'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}
$client = @$_SERVER['HTTP_CLIENT_IP'];
$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
$remote = $_SERVER['REMOTE_ADDR'];
if(filter_var($client, FILTER_VALIDATE_IP))
{
$ip = $client;
}
elseif(filter_var($forward, FILTER_VALIDATE_IP))
{
$ip = $forward;
}
else
{
$ip = $remote;
}
return $ip;
}
$user_ip = getUserIP();
このコードは、IP アドレスを変数 $user_ip に割り当てます。これは、PHP スクリプト内で必要に応じて利用できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3