【问题标题】:Symfony 4 session expire too soonSymfony 4 会话过期太快
【发布时间】:2019-06-24 22:40:59
【问题描述】:

即使我在config/packages/framework.yaml 中设置了几天,我与 Symfony 4.0 的 php 会话也很快过期。

framework:

{...}
session:
    handler_id: ~
    cookie_lifetime: 604800
{...}

当用户完成登录过程后,他可以在网站上导航,如果他在几分钟后返回,则无需再次登录。

但如果他在 1 或 2 小时后返回(不确切知道),则会话已过期,他必须重新登录。

似乎可行的解决方案之一是更改您在上面看到的内容:

handler_id: session.handler.native_file
save_path: "%kernel.root_dir%/sessions"
cookie_lifetime: 604800    

不幸的是,该解决方案解决了开发环境中的问题,但一旦我在服务器上提取代码,应用程序就会崩溃。

【问题讨论】:

标签: php symfony authentication session-cookies symfony4


【解决方案1】:

问题已解决

问题是 save_path。只需使用official Symfony Documentation 中建议的参数即可。这样,您的 cookie 将被正确存储。

session:
    handler_id: session.handler.native_file
    save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%'
    cookie_lifetime: 604800

【讨论】:

    猜你喜欢
    • 2012-01-12
    • 1970-01-01
    • 1970-01-01
    • 2012-02-05
    • 1970-01-01
    • 1970-01-01
    • 2014-02-20
    • 2012-05-31
    • 2019-01-15
    相关资源
    最近更新 更多