美文网首页
微信H5支付,网络环境未通过安全检测

微信H5支付,网络环境未通过安全检测

作者: 勿_5d7a | 来源:发表于2018-12-27 15:48 被阅读0次

    微信给的sdk里面是这样的

    96X@HSYXL{GU3C0ZN$_)P94.png

    也就是 写死了,如果有用到反向代理了,那么坑就来了

    }$U[68`E_]GBZF{{W}G)}98.png

    提供了setIP的 但是由于sdk的统一下单写死了,并没用什么卵用,set不进去

    修改为


    1545896858(1).jpg
        public static  function getClientIp($type=0)
        {
            $type       =  $type ? 1 : 0;
            static $ip  =   NULL;
            if ($ip !== NULL) return $ip[$type];
    
            if(isset($_SERVER['HTTP_X_REAL_IP'])){//nginx 代理模式下,获取客户端真实IP
                $ip=$_SERVER['HTTP_X_REAL_IP'];
            }elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {//客户端的ip
                $ip     =   $_SERVER['HTTP_CLIENT_IP'];
            }elseif (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {//浏览当前页面的用户计算机的网关
                $arr    =   explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
                $pos    =   array_search('unknown',$arr);
                if(false !== $pos) unset($arr[$pos]);
                $ip     =   trim($arr[0]);
            }elseif (isset($_SERVER['REMOTE_ADDR'])) {
                $ip     =   $_SERVER['REMOTE_ADDR'];//浏览当前页面的用户计算机的ip地址
            }else{
                $ip=$_SERVER['REMOTE_ADDR'];
            }
            // IP地址合法验证
            $long = sprintf("%u",ip2long($ip));
            $ip   = $long ? array($ip, $long) : array('0.0.0.0', 0);
            return $ip[$type];
        }
    

    相关文章

      网友评论

          本文标题:微信H5支付,网络环境未通过安全检测

          本文链接:https://www.haomeiwen.com/subject/bmorlqtx.html