ECSHOP后台退出频率一两分钟就退出,总要要重新登录很麻烦,通过以下方法可以解决:
打开 include/lib_base.php
找到real_ip()函数,在real_ip函数中添加红色部分代码:
将:
functionreal_ip() { static$realip=NULL; if($realip!==NULL) { return$realip; } if(isset($_SERVER)) { if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $arr=explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']); /*取X-Forwarded-For中第一个非unknown的有效IP字符串*/ foreach($arrAS$ip) { $ip=trim($ip); if($ip!='unknown') { $realip=$ip; break; } } } elseif(isset($_SERVER['HTTP_CLIENT_IP'])) { $realip=$_SERVER['HTTP_CLIENT_IP']; } else { if(isset($_SERVER['REMOTE_ADDR'])) { $realip=$_SERVER['REMOTE_ADDR']; } else { $realip='0.0.0.0'; } } } else { if(getenv('HTTP_X_FORWARDED_FOR')) { $realip=getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('HTTP_CLIENT_IP')) { $realip=getenv('HTTP_CLIENT_IP'); } else { $realip=getenv('REMOTE_ADDR'); } } preg_match("/[d.]{7,15}/",$realip,$onlineip); $realip=!empty($onlineip[0])?$onlineip[0]:'0.0.0.0'; return$realip; }
替换成:
functionreal_ip() { static$realip=NULL; if($realip!==NULL) { return$realip; } /*添加*/ if(isset($_COOKIE['real_ipd'])&&!empty($_COOKIE['real_ipd'])){ $realip=$_COOKIE['real_ipd']; return$realip; } /*添加*/ if(isset($_SERVER)) { if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $arr=explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']); /*取X-Forwarded-For中第一个非unknown的有效IP字符串*/ foreach($arrAS$ip) { $ip=trim($ip); if($ip!='unknown') { $realip=$ip; break; } } } elseif(isset($_SERVER['HTTP_CLIENT_IP'])) { $realip=$_SERVER['HTTP_CLIENT_IP']; } else { if(isset($_SERVER['REMOTE_ADDR'])) { $realip=$_SERVER['REMOTE_ADDR']; } else { $realip='0.0.0.0'; } } } else { if(getenv('HTTP_X_FORWARDED_FOR')) { $realip=getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('HTTP_CLIENT_IP')) { $realip=getenv('HTTP_CLIENT_IP'); } else { $realip=getenv('REMOTE_ADDR'); } } preg_match("/[d.]{7,15}/",$realip,$onlineip); $realip=!empty($onlineip[0])?$onlineip[0]:'0.0.0.0'; /*添加*/setcookie("real_ipd",$realip,time()+36000,"/");/*添加*/ return$realip; }
本文收集于互联网,由 本站 整理编辑,不代表 本站 对观点赞同或支持。如果有侵权、不妥之处,请联系我们删除。敬请谅解!
© 版权声明
THE END