如何在会话超时后自动重定向Symfony中的用户?

时间:2014-03-06 18:10:48

标签: php session symfony

我试图在一定的秒数后强制超时但是即使注销有效,我也试图实现自动重定向到我无法实现的URL。有任何想法吗?

我遵循给出的例子(得票最多的答案):How to log users off automatically after a period of inactivity?

1 个答案:

答案 0 :(得分:3)

该指南仅在您向服务器发出另一个请求后才会将您注销。这意味着您当前所在的页面可以永久保持打开状态。

在给定时间后强制请求到服务器将非常容易。在模板中,您可以添加元刷新:

<meta http-equiv="refresh" content="300">

将其放入html的标题部分会在5分钟后重新加载页面。这个数字是几秒钟。

然后在SessionIdleHandler课程中,您只需将响应更改为重定向到您想要的位置。

来自:

$event->setResponse(new RedirectResponse($this->router->generate('fos_user_security_login')));

为:

$event->setResponse(new RedirectResponse($this->router->generate('my_bundle.my_route')));