Emlog开起CDN加速后会出现获取不到正确的IP,通过修改部分文件可以解决这个问题
具体办法,修改include/lib/function.base.php文件
/** * 获取用户ip地址 */ function getIp() { $ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : ''; if (!ip2long($ip)) { $ip = ''; } return $ip; }
修改为:
/** * 获取用户ip地址 */ function getIp() { $ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : ''; if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $list = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); $ip = $list[0]; } if (!ip2long($ip)) { $ip = ''; } return $ip; }