根据Laravel的说法 config/session.php
/* |-------------------------------------------------------------------------- | Session Lifetime |-------------------------------------------------------------------------- | | Here you may specify the number of minutes that you wish the session | to be allowed to remain idle before it expires. If you want them | to immediately expire on the browser closing, set that option. | */ 'lifetime' => 120, 'expire_on_close' => true, 'expired-session-redirect' => url(env('APP_URL'))
我已经将会话的生命周期设置为120
分钟,但我感觉我的用户在120分钟之前就已经注销了.
那是一个错字吗?它们意味着120秒,这是2分钟?
任何人都可以对此有所了解吗?
检查你的php.ini:
session.gc_maxlifetime - 默认1440秒 - 24分钟
session.gc_maxlifetime指定数据被视为"垃圾"并可能被清除的秒数.在会话开始期间可能会发生垃圾收集(取决于session.gc_probability和session.gc_divisor).
session.cookie_lifetime - 默认值0
session.cookie_lifetime指定发送到浏览器的cookie的生命周期(以秒为单位).值0表示"直到浏览器关闭".默认为0.另请参见session_get_cookie_params()和session_set_cookie_params().
如果它的时间少于Laravel配置,则cookie将被删除,因为本地php.ini 优先于Laravel配置.
你可以增加它或评论/删除.
如果没有解决你的应用程序上的东西正在破坏会话.