ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

php – 导致重定向循环的原因是什么?

2019-07-23 22:28:05  阅读:178  来源: 互联网

标签:php redirect infinite-loop web-applications


这是我的网页:

重定向页面:
如果用户具有打开的会话,则重定向到适当的资源
否则重定向到登录页面

登录页面:
如果用户登录信息有效,则重定向到$_SERVER [‘HTTP_REFERER’]
否则显示登录页面

当您访问重定向页面时,它会发现您没有有效的会话并重定向到登录页面.然后您可以登录没有问题,但在身份验证后我收到“此网页有一个重定向循环.” Chrome页面.

这不是一个真正的循环,因为有几种方法(IE提供有效的登录详细信息并转到目标资源,提供无效登录和接收错误消息等).但我可以看到浏览器的混乱(从a到b再到a).

我有什么想法可以解决这个问题吗?

干杯

解决方法:

$_SERVER [‘HTTP_REFERER’]将始终是登录页面,因为您必须在成功登录之前加载登录页面.因此,一旦您成功登录,引用者就是登录页面,因此登录页面会将您重定向到您仍然成功登录的登录页面,因此它会一遍又一遍地登录您.

您可能应该在$_SESSION或$_COOKIE变量中存储他们试图访问的页面,而不是依赖$_SERVER [‘HTTP_REFERER’].最有可能的会话会更好,具体取决于您的设置.

标签:php,redirect,infinite-loop,web-applications
来源: https://codeday.me/bug/20190723/1517511.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有