在PHP中如何获取用户的IP地址

很多时候,为了跟踪活动或者安全原因,我们需要收集访问者IP地址。
在PHP中获取访问者的IP地址非常容易。
PHP $_SERVER变量提供了一种让用户IP地址的简单方法。
$_server包含一个在PHP中提供服务器和环境相关信息的数组。

获取访问者IP地址的最简单方法是使用PHP中的remote_addr。

  • $_server ['remote_addr'] - 返回从中查看当前页面的用户的IP地址。
echo 'User IP - '.$_SERVER['REMOTE_ADDR'];

但有时,Remote_Addr不会返回用户的正确IP地址。
背后的原因是使用代理。
在这种情况下,使用以下代码在PHP中获取用户的真实IP地址。

function getUserIpAddr(){
    if(!empty($_SERVER['HTTP_CLIENT_IP'])){
        //ip from share internet
        $ip = $_SERVER['HTTP_CLIENT_IP'];
    }elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
        //ip pass from proxy
        $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    }else{
        $ip = $_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}
echo 'User Real IP - '.getUserIpAddr();
日期:2020-06-02 22:15:45 来源:oir作者:oir