网站地图    收藏   

主页 > 后端 > ecshop教程 >

ecshop后台登录超时session过期的解决办法 - ecshop

来源:自学PHP网    时间:2014-11-28 23:31 作者: 阅读:

[导读] 可能有不少用户会发现自己的ecshop经常会使用关就超时了,这个问题解决办法有很多种,我们可以直接在ecsho中进行修改,具体方法如下,在includescls_session php中修改...

ecshop后台登录超时session过期的解决办法

可能有不少用户会发现自己的ecshop经常会使用关就超时了,这个问题解决办法有很多种,我们可以直接在ecsho中进行修改,具体方法如下,在includescls_session.php中修改

  1. var $max_life_time = 1440; 
  2. // SESSION 过期时间、单位秒这段代码中的数字。此数字单位为秒,前台登录和后台登陆都是调用这里设置的时间。 

关于在后台编辑产品经常由于时间长而超时,可以在登录的时候,勾起“请保存我这次登录信息”就可以不提示超时了,或者直接修改admintemplateslogin.html,,让页面默认选中这一项!现在的新版本,对安全打高了一些,几乎是5分钟没有操作后台就重新登陆,有没有办法可以改掉因为只有3分钟,所以我们往往在录入过程中就超时了,所以我们需要增加超时时间,修改方法如下:

  1. includes/init.php 
  2. api/init.php 
  3. admin/includes/init.php 
  4. wap/includes/init.php 

在以上这几个文件中,找到下面的代码:

@ini_set(’session.cache_expire’, 180);//单位秒

当然除了上面方法我们还可以修改php配置文件来操作了,继续PHP中的Session话题,在PHP中主要通过设置session.gc_maxlifetime来设定Session的生存周期。例如:

  1. <?php 
  2. ini_set('session.gc_maxlifetime', 3600); //设置时间 
  3.  ini_get('session.gc_maxlifetime');//得到ini中设定值 
  4. ?> 

下面提供一个别人封装好的函数,但是我没有测试过,仅供参考:

  1. <?php 
  2.     function start_session($expire = 0) 
  3.     { 
  4.     if ($expire == 0) { 
  5.     $expire = ini_get('session.gc_maxlifetime'); 
  6.     } else { 
  7.     ini_set('session.gc_maxlifetime'$expire); 
  8.     } 
  9.       
  10.     if (emptyempty($_COOKIE['PHPSESSID'])) { 
  11.     session_set_cookie_params($expire); 
  12.     session_start(); 
  13.     } else { 
  14.     session_start(); 
  15.     setcookie('PHPSESSID', session_id(), time() + $expire); 
  16.     } 
  17.     } 
  18.     ?> 

使用方法:加入start_session(600);//600秒以后过期。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论