在15分钟不活动后,会话应该在symfony中的应用程序中过期。
到目前为止我已尝试过: 在config.yml文件中设置
session:
cookie_lifetime: 900
它在15分钟内从应用程序注销。甚至用户活跃。 但我想显示用户是否在15分钟内处于非活动状态。然后它应该注销。否则就不应该。
有人有想法吗?
答案 0 :(得分:0)
那里有一些下一级技巧,我不是这方面的专家
如果你有一个代表用户的自定义用户实体,你可以为它添加一个名为“last_activity”的新成员,并在你到达控制器方法时检查他是否仍然有效:
$user->last_activity + 900 >= time()
如果是,请将用户注销。否则,只需以这种方式修改last_activity:
$user->last_activity = time();
可能有更好的解决方案(Symfony native)但我不知道它可以随意完成:)
答案 1 :(得分:0)
我认为正确的做法如下:
session:
cookie_lifetime: 7200
gc_maxlifetime: 900
您可以在此处进一步阅读:http://symfony.com/doc/current/components/http_foundation/session_configuration.html