[PHP]クライアントのIPを取得する方法:Cloudfront配下など
Cloudfrontなどをサイトの前にかましていると$_SERVER[‘REMOTE_ADDR’]ではクライアントIPは取得できない
HTTP_X_FORWARDED_FORなどに値が入っているので、それぞれ値が入っているところを探して取得する
$ipaddress = ''; if (isset($_SERVER['HTTP_CLIENT_IP'])) $ipaddress = $_SERVER['HTTP_CLIENT_IP']; else if(isset($_SERVER['REMOTE_ADDR'])) $ipaddress = $_SERVER['REMOTE_ADDR']; else if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_X_FORWARDED'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED']; else if(isset($_SERVER['HTTP_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_FORWARDED'])) $ipaddress = $_SERVER['HTTP_FORWARDED']; else $ipaddress = 'UNKNOWN'; return $ipaddress;