Symfony2 - 重新登录后重定向用户,如果由于会话过期而被注销?

时间:2016-02-26 13:37:34

标签: php symfony session redirect

在Symfony 2.8中,如果用户的会话到期,他将在他提出新请求后注销并重定向到登录页面。
用户再次登录后,如何在重定向之前将用户重定向回他想要打开的页面?或者至少到他打开的最后一页(页面,哪个会话到期)?

2 个答案:

答案 0 :(得分:1)

您可以让登录操作检查或有一个referer,并更新安全目标路径。在执行此操作之前,请确保引用者是安全的; - )

$yourReferer = $request->headers->get('referer');
$this->container->get('session')->set('_security.main.target_path', $yourReferer);

登录机制将在成功登录后使用target_path

答案 1 :(得分:0)

使用标头获取引荐来源(即# set env variable if URL is /rest or /rest/ SetEnvIf Request_URI "/rest(/.*)?$" rest_uri Order deny,allow # first deny all Deny from all # then allow if env var is not set Allow from env=!rest_uri # also allow your IP range Allow from 10.1.0.0/16 )在这种情况下不起作用,因为它将始终返回登录链接。

感谢@Carrie Kendall - 感谢他的answer