【问题标题】:PHP - Codeigniter - Redirect LoopPHP - Codeigniter - 重定向循环
【发布时间】:2014-04-24 08:50:16
【问题描述】:

每当我在[website].com 访问我的网站时,页面都会不断重定向,直到浏览器显示This webpage has a redirect loop

但是

当我访问 [website].com/[controller] 时,一切正常。


并非所有这些都是相关的,但我会列出尽可能多的信息。

routes.php 中的默认控制器是welcome

欢迎控制器:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Welcome extends CI_Controller
{
    public function index()
    {
        // Testing: Does not reach this die statement
        die('error');
        //$this->load->view('public/welcome');
    }
}

.htaccess 文件:

RewriteEngine On
RewriteCond $1 !^(index\.php|assets|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]

更新


这可能是一个问题,但我的 [website].com 域指向一个子文件夹 /public_html/[website].com/,其中我有我的 Codeigniter 文件夹结构以及 index.php.htaccess

【问题讨论】:

  • 这里没有错。在 Firebug 中打开您的页面并查看它在 Net 选项卡中显示的内容。
  • Chrome 开发者工具显示了一堆302 Found[website].comInitiator 列为http://[website].com Redirect
  • apache/web 服务器设置是否能够正确显示正确的文件夹?这可能在 CI 之前。您也可以尝试启用调试日志并查看控制器是否已加载,是否甚至是 CI 导致此问题。
  • 如何将website.com 指向/public_html/[website].com/
  • @anubhava 它通过网络公司...

标签: php .htaccess codeigniter redirect codeigniter-2


【解决方案1】:

因此,经过一些调试,我发现并不是任何 .htaccess 文件在重定向问题。它实际上是 CodeIgniter 框架。更具体地说,Hook

钩子的一个问题使它不断重定向到[website].com,它试图访问默认控制器welcome ...然后重定向,依此类推。

哦,小东西!

感谢大家的帮助!

【讨论】:

  • @VipulHadiya 我不记得怎么做了,但我必须修复一个导致重定向不正确的代码错误。如果您遇到问题,我建议您发布您自己的问题。 Stackoverflow 是一个很好的社区,可以解决您的所有问题! :)
【解决方案2】:

我的.htaccess 看起来像这样:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

我的routes.php 看起来像这样:

$route["default_controller"] = "welcome";
$route["404_override"] = "";

我的控制器在这个路径中:

/codeigniter/2.1.4/application/controllers/Welcome.php

我不是.htaccess wiz,但你可以尝试让你的与我的匹配吗?

更新:

您能否暂时将.htacess 完全排除在外(通过移动、重命名或删除文件内容)并尝试访问这些 URL?

http://www.your-website.com/index.php

http://www.your-website.com/index.php/welcome

http://www.your-website.com/index.php/welcome/index

【讨论】:

  • 当我访问[website].com 时,我仍然得到一个重定向循环......我不知道发生了什么! :(
  • 请参阅Update:部分
【解决方案3】:

我通过将“$config['sess_encrypt_cookie']”的值设置为“TRUE”解决了这个问题 在我的情况下,这是由于安全类对 cookie 值进行了清理。 但是 cookie 数据的加密解决了这个问题。

【讨论】:

    猜你喜欢
    • 2015-03-21
    • 2018-03-08
    • 1970-01-01
    • 1970-01-01
    • 2011-05-08
    • 1970-01-01
    • 1970-01-01
    • 2012-11-15
    • 1970-01-01
    相关资源
    最近更新 更多