修改lib_base.php文件real_ip()函数,在real_ip函数中添加我标注/*添加*/的部分代码: function real_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']);
foreach ($arr AS $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; } 这样就解决后台频繁退出的问题了。
|