ecshop后台登录频繁自动退出问题终极解决方法集锦

作者: unvs 分类: PHP 发布时间: 2016-04-10 11:31 ė12,069 views 6没有评论

ecshop后台登录后,有时候会自动退出,而且还会很频繁,有的是后台操作两下就莫名退出了,有的是恰好三分钟左右登出。这让管理员很恼火,严重影响了后台使用。对于这一问题,网络上可给的解决方法各有不同、千篇一律的复制。首先这篇文章,总结囊括了网上已有的大部分解决方案;其次,也加入了博主自带的解决方法,供各位ecshop技术参考使用,总有一个适合你的网站。

方法一:网络IP常自动切换的情况
修改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))
{
elseif (isset($_SERVER['HTTP_CLIENT_IP']))
{
$realip = $_SERVER['HTTP_CLIENT_IP'];
}
*****
中间省略N行
*****
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;
}

方法二:ecshop全局设置session保存时间
ecshop程序目录/data/config.php
找到代码:
$session = “1440″;
改为你想要的数字,单位:秒

方法三:对于后台登录恰好3分钟退出可能有用
includes/init.php
api/init.php
admin/includes/init.php
wap/includes/init.php
使用编辑工具打开上面的几个文件,找到下面的代码:
@ini_set(‘session.cache_expire’, 180);
可将值“180”修改为自己所理想的值,如:
@ini_set(‘session.cache_expire’, 600); //10分钟

方法四:ecshop以IP地址来验证,而网络环境为双线网络

找到includes/cls_session.php,函数function gen_session_key($session_id)方法里,

删除掉代码:
if ($ip == ”)
{
$ip = substr($this->_ip, 0, strrpos($this->_ip, ‘.’));
}

方法五:ecshop后台完全无法保存session或cookie情况
打开admin/privilege.php文件,验证登录信息elseif ($_REQUEST['act'] == ‘signin’)块,找到代码:
//清除购物车中过期的数据
clear_cart();

在其前面增加代码:

此处内容已隐藏,点击将本文 点击转播到新浪微博即可查看全部内容点击转播到腾讯微博即可查看全部内容 后即可浏览

好了,五种关于 ecshop后台登录频繁自动退出问题 的解决方法 ,应该可以解决99%的这种问题,如果不能解决你的问题,那你就是另外1%。

本博文章基本上属于原创或收集整理,都是心血结晶。
欢迎转载分享,转载请注明出处,谢谢!
本文地址:ecshop后台登录频繁自动退出问题终极解决方法集锦

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Ɣ回顶部