关于ECSHOP后台无法登陆的问题
admin/includes/init.php 下305行:
strpos(preg_replace('/:\d+/', '', $_SERVER['HTTP_REFERER']), $admin_path) === false
这是由于局域网中IP没有直接指向,造成解析完域名之后,再通过内部IP访问数据。此时的$_SERVER['HTTP_REFERER']是带域名的,$admin_path 是带IP的,所以判断为true。
症结在includes/cls_ecshop.php 的get_domain()函数,在上面情况下,$_SERVER['HTTP_HOST'], $_SERVER['SERVER_NAME'], $_SERVER['SERVER_ADDR']都是IP地址,导致$admin_path也就是IP地址了。
如果有和我一样的情况,可以试着把get_domain()函数里写成这样
function get_domain()
{
return $this->http() . '你的域名.com'
}
此方法经测试可行
上一篇: DEDE5.7联动枚举不更新的问题