1 回答
TA貢獻1773條經(jīng)驗 獲得超3個贊
thinkphp的session設(shè)置周期是無效的;
直接的影響就是無法保留用戶的登陸狀態(tài);
用thinkphp開發(fā)的項目;
關(guān)閉瀏覽器后用戶就退出了;
即便設(shè)置了session周期也沒作用;
這個bug存在很久了;
但是thinkphp官網(wǎng)一直沒處理更新;
吐槽完畢;下面來解決這個bug;
首先需要在 /Thinkphp/Common/funtion.php 公告函數(shù)的第1213行添加如下內(nèi)容;
如果不是在1213行;就搜索gc_maxlifetime
// 1213行原代碼if(isset($name['expire'])) ini_set('session.gc_maxlifetime', $name['expire']);// 改成如下代碼if(isset($name['expire'])) ini_set('session.gc_maxlifetime', $name['expire']);ini_set('session.cookie_lifetime', $name['expire']);PHP
原代碼:
更改后的代碼:
然后在配置項/Application/Common/conf/config.php中添加如下代碼
//***********************************SESSION設(shè)置**********************************
'SESSION_OPTIONS' => array(
'name' => 'BJYSESSION', //設(shè)置session名
'expire' => 24*3600*15, //SESSION保存15天
'use_trans_sid' => 1, //跨頁傳遞
'use_only_cookies' => 0, //是否只開啟基于cookies的session的會話方式
),PHP
ok;大功告成;
- 1 回答
- 0 關(guān)注
- 2452 瀏覽
添加回答
舉報
