【问题标题】:Too many redirects重定向过多
【发布时间】:2011-06-17 09:34:43
【问题描述】:

我找不到解决这个问题的方法。基本上我们使用的是一个虚荣的 url 系统,所以它的 user.domain.com。所有文件都像 user.domain.com/home.php 等一样被访问。当您清除 cookie 时,重定向工作,它会提示他们再次登录。但是当我使用注销时,它仍然可以工作,但是当他们返回登录链接时,(user.domain.com,在用户的登录页面上有一个登录表单)它将无法工作。我得到的错误是

错误信息:

              The page isn't redirecting properly



               Firefox has detected that the server is redirecting the request for this address
               in a way that will never complete.


               This problem can sometimes be caused by disabling or refusing to accept
      cookies.

所有会员页面的重定向代码:

         if(!isset($_SESSION['user_name'])) { header("Location: http://$_SERVER[HTTP_HOST]");}
         Note:  The $_SERVER[HTTP_HOST] captures the user.domain.com value for redirect. 

退出代码:

          <?php


            session_start();
            session_destroy();

            header( 'Location: $_SERVER[HTTP_HOST]' ) ;
              ?>

解决此问题的唯一方法是用户清除其 cookie。

更新:使用 logout.php 后,我转到成员页面 user.domain.com/home.php 之一,而不是重定向到 user.domain.com 进行登录,它给了我重定向错误。这可能是会话的问题还是标题的问题?

我可以增强或添加什么来解决这个问题?我试过谷歌搜索,但没有发现任何特别的东西。我真的需要一些帮助来解决这个问题。谢谢。

这是我在 Safari 中收到的错误消息:

       Too many redirects occurred trying to open “http://user.domain.com/home.php”.
      This might occur if you open a page that is redirected to open another page which then is  redirected to open the original page.

【问题讨论】:

  • 你是否在标头重定向后执行die()
  • 没有一个标题有 die()。
  • 我尝试在会话代码之后使用它。仍然给出同样的问题。

标签: php session redirect session-variables isset


【解决方案1】:

浏览器阻止你用一堆请求敲击服务器。这很可能是因为 header() 将您发送到一个页面,而该页面又将您发送到同一页面(或具有相同 header() 的页面)。

【讨论】:

    【解决方案2】:

    这很可能是因为您被重定向到同一个注销页面。我会尝试以不同的方式设置位置。

    【讨论】:

      【解决方案3】:

      当我使用相同的参数重定向回同一页面时发生在我身上迭代并给出这个错误。

      最好的选择 - 调试您的代码并查看您是否使用相同的查询字符串/帖子参数重新进入页面...

      【讨论】:

        【解决方案4】:

        问题可能在于您要转发到的页面,而不是您要转发的页面 当我从页面 forwardingPage.php 转发到(home.php)的页面未通过身份验证检查时,这发生在我身上。

        接收home.php页面上的格式是

        如果身份验证检查通过...执行此操作 否则,如果身份验证检查失败,则使用标头函数转发回相同的 forwardingPage.php

        身份验证检查每次都失败,因此页面被转发,然后返回到自身。我修复了身份验证检查并解决了问题

        【讨论】:

          猜你喜欢
          • 2016-07-19
          • 1970-01-01
          • 2021-03-20
          • 2018-12-16
          • 1970-01-01
          • 1970-01-01
          • 2017-12-15
          • 2021-02-22
          相关资源
          最近更新 更多