在Symfony 2.8中,如果用户的会话过期,他将被注销并在提出新请求后重定向到登录页面。
用户再次登录后,如何将用户重定向回他在被重定向之前想要打开的页面?或者至少到他打开的最后一页(页面,哪个会话过期)?
您可以让登录操作检查或存在引用,并更新安全目标路径。在执行此操作之前,请确保推荐人是安全的;-)
$yourReferer = $request->headers->get('referer');
$this->container->get('session')->set('_security.main.target_path', $yourReferer);
登录机制将在成功登录尝试后使用该target_path
。
在这种情况下,
使用标头获取引用(即$request->headers->get('referer')
)将不起作用,因为它将始终返回登录链接。
感谢@Carrie肯德尔 - 他的回答