我有一个使用Symfony 2.8创建的医疗管理,在随机时间(来自客户的电子邮件文本)注销用户一段时间不活动(这种情况发生在他们发送表单时(无论是什么))。
我已经将会话时间增加了七个月。
cache_lifetime
设置为0(“关闭浏览器时”)。
我试图重新创建问题,但我的合作者都没有发现问题(从未注销)。
有没有办法弄清楚当自动注销时系统注销用户或要调用的函数/控制器/事件的原因,以便我能够理解浏览器客户的工作?
答案 0 :(得分:0)
很可能是你的服务器超时而不是Symfony。
无论如何,确保在Symfony应用程序中保留会话的最佳方式(imo)是将它们存储在数据库中。
# app/config/config.yml
framework:
session:
# ...
handler_id: session.handler.pdo
services:
session.handler.pdo:
class: Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler
public: false
arguments:
- 'mysql:dbname=mydatabase'
- { db_username: myuser, db_password: mypassword }
完整文档文章:http://symfony.com/doc/current/doctrine/pdo_session_storage.html