cakephp 3如何增加会话超时
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cakephp 3如何增加会话超时相关的知识,希望对你有一定的参考价值。
有谁知道如何增加cakephp 3中的会话超时,无论我怎么试,它只是在15分钟超时,
最新的事情,我试过的是
在app.php文件中更改此设置,但它仍然在15分钟左右超时,这非常令人讨厌
'Session' => [
'defaults' => 'php',
'timeout'=>300*60//in minutes
],
谢谢
会话超时,会话cookie生命周期。后者不受前者的影响,前者可在CakePHP配置中配置,如代码片段所示,并由CakePHP会话处理程序处理。
检查您的PHP安装session.cookie_lifetime
设置,它可能是问题的原因。如果您需要更改它,可以在php.ini
中执行此操作,或者在CakePHP会话配置中使用ini
选项。
从文档引用:
默认情况下,无论配置的Session.timeout值如何,PHP都会将会话cookie设置为在浏览器关闭后立即过期。 cookie超时由session.cookie_lifetime ini值控制,可以使用以下命令进行配置:
Configure::write('Session', [ 'defaults' => 'php', 'ini' => [ // Invalidate the cookie after 30 minutes without visiting // any page on the site. 'session.cookie_lifetime' => 1800 ] ]);
Session.timeout和session.cookie_lifetime值之间的区别在于后者依赖客户端讲述cookie的真相。如果您需要更严格的超时检查,而不依赖于客户端报告的内容,则应使用Session.timeout。
Cookbook > Sessions > Session Configuration
如果这不能解决问题,那么你将不得不做一些调试,检查会话cookie到期值,挂钩到CakePHPs会话处理程序,以确定这是否是会话被杀死的地方(CakeNetworkSession::_timedOut()
)等...
以上是关于cakephp 3如何增加会话超时的主要内容,如果未能解决你的问题,请参考以下文章