zoukankan      html  css  js  c++  java
  • ecshop后台登录频繁自动退出问题终极解决方法集锦

    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();

    在其前面增加代码:

  • 相关阅读:
    安卓开发1-开发第一个安卓hello word
    安卓开发系列
    Php调用工行支付接口时的问题解决
    angular模块
    angular自定义指令基础
    ajax跨域问题
    angular要点总结
    JS闭包函数
    避开ie6使用float后再使用margin兼容的2种方法
    如何学习面向对象编程
  • 原文地址:https://www.cnblogs.com/houdj/p/6416254.html
Copyright © 2011-2022 走看看