前言# 此文章相當(dāng)于開(kāi)發(fā)記錄锄贷,希望能幫助遇到同樣問(wèn)題的同學(xué)揽惹,或在看了此篇文章后能避免犯同樣的錯(cuò)誤秋忙。
問(wèn)題描述#
之前項(xiàng)目開(kāi)發(fā)時(shí)盔沫,SESSION_DRIVER 使用的是 redis
医咨,后來(lái)為了分離邏輯蚂夕,將其修改成 memcached
。
這時(shí)問(wèn)題來(lái)了腋逆,配置修改后婿牍,用戶無(wú)法正常登陸,表現(xiàn)為登陸成功后一刷新頁(yè)面惩歉,又顯示為 未登錄 狀態(tài)等脂。
定位問(wèn)題#
針對(duì)此問(wèn)題,當(dāng)時(shí)專門(mén)做了幾個(gè)排查步驟:
- 檢查
memcached
服務(wù)是否啟動(dòng)撑蚌; - 檢查
memcached
是否能正常存儲(chǔ)數(shù)據(jù)上遥; - 檢查
memcached
有無(wú)被其他設(shè)置覆蓋;
結(jié)果上面的步驟均正常争涌。這時(shí)突然想到會(huì)不會(huì)是 過(guò)期時(shí)間 設(shè)置有問(wèn)題粉楚?
打開(kāi) config/session.php
文件一看果然如此:
file
之前開(kāi)發(fā)的小伙伴為了能長(zhǎng)久保持 Session
,lifetime
值設(shè)置為了 525600
(即 1 年)亮垫,而 memcached
默認(rèn)的過(guò)期時(shí)間則 不能大于 30 天模软!
最終將 lifetime
的值修改為默認(rèn)值 43200(1440 * 30)
Over