在我的应用程序中,Home是默认的控制器集。我有一个主控制器,如果没有设置特定的会话变量,它会重定向到主页。登录验证后,会为用户创建会话,并将我重定向到主页。在主页上,当我单击指向主页"http://domain/main“的链接时,它会再次将用户重定向到主页。当我在url中输入"http://domain/main/“时,它会打开正确的页面。但是"http://domain/main“正在重定向到"http://domain/home”。当我清除存储中的会话文件并登录时,"http://domain/main“可以工作,但过了一段时间后,它会再次将我重定向到主页。我认为laravel缓存存在问题,因为在我的代码中,重定向处理是完美的。
发布于 2015-06-09 17:43:45
有时浏览器会缓存重定向301URL。所以在你的代码中,如果你在某些条件下设置了会话变量。并且您重定向(301)到一组会话变量上的页面,而您的浏览器缓存该重定向。因此,如果在第一个会话变量未设置时,您的代码将重定向(301)到不同的链接。下次在客户端交互上设置变量并设置会话变量时,浏览器会将您重定向到缓存的链接。为了避免这种情况,您必须将重定向http代码传递给laravel中的redirectto('location url','302')函数。
https://stackoverflow.com/questions/30640109
复制相似问题