如何在 Symfony 中增加会话超时

Posted

技术标签:

【中文标题】如何在 Symfony 中增加会话超时【英文标题】:How to increase the session timeout in Symfony 【发布时间】:2011-01-22 18:34:17 【问题描述】:

我想知道如何在 symfony 中增加会话超时。只调整 symfony 配置设置就足够了吗,还是我必须在我的 php.ini 文件中配置任何内容?

【问题讨论】:

【参考方案1】:

对于 Symfony 2.0.x

framework:
    session:
        lifetime: 43200  #time in seconds

对于 Symfony >= 2.1.0

framework:
    session:
        cookie_lifetime: 43200  #time in seconds

【讨论】:

如果其他人想知道,您可以找到此文档here。还值得指出的是,这会影响登录到期时间。 但是,该参数配置了 cookie 的生命周期(实际上不是会话),导致会话在创建后的指定时间后关闭(它们不会更新)。 当用户使用 PDOSession 时如何在 Symfony >= 2.1.0 中实现这一点? @Nis 这看起来像是要打开一个单独的问题:-)【参考方案2】:

对于 sf1.0

更改apps/appname/config/settings.yml中的值

all:
  .settings:
    timeout:    1800 #session lifetime value in seconds

对于 sf1.1+

将这些行添加到 apps/appname/config/factories.yml

user:
  class: myUser
  param:
    timeout:    1800 #session lifetime value in seconds

【讨论】:

您好!谢谢您的帮助!此配置是否足够或需要对 php.ini 文件进行一些其他更改?提前致谢,致以最诚挚的问候! 这就是你所需要的——symfony 独立于 php.ini 中的设置管理它的会话。

以上是关于如何在 Symfony 中增加会话超时的主要内容,如果未能解决你的问题,请参考以下文章

如何在Linux中增加SSH连接超时的时间

增加PHP中的会话超时[重复]

如何在 Laravel 中设置会话超时?

如何在 Symfony 中使用会话? [关闭]

如何在 Symfony 中延长会话 cookie 的生命周期?

如何在 symfony 2/3 中关闭会话?