有代理的情况下获取客户端ip

    protected function getClientIP()
    {
        if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {
            if (isset($_SERVER["HTTP_CLIENT_IP"])) {
                  $proxy = $_SERVER["HTTP_CLIENT_IP"];
            } else {
                 $proxy = $_SERVER["REMOTE_ADDR"];
            }
            $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
        } else {
            if (isset($_SERVER["HTTP_CLIENT_IP"])) {
                  $ip = $_SERVER["HTTP_CLIENT_IP"];
            } else {
                 $ip = $_SERVER["REMOTE_ADDR"];
            }
        }
        if(isset($ip)){
            return $ip;
        }
        if (isset($proxy)) {
            return $proxy;
        } 
    }

 

posted @ 2015-04-08 09:14  jami918  阅读(119)  评论(0)    收藏  举报