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