每当我在[website].com
访问我的网站时,该网页将不断重定向,直到浏览器显示This webpage has a redirect loop
。
BUT
当我访问[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
和{{1 }}
答案 0 :(得分:1)
我的.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
完全取消等式(通过移动,重命名或删除文件内容)并尝试访问这些网址吗?
http://www.your-website.com/index.php
或
http://www.your-website.com/index.php/welcome
或
http://www.your-website.com/index.php/welcome/index
答案 1 :(得分:1)
因此,通过一些调试,我发现任何.htaccess
文件都没有重定向。它实际上是CodeIgniter框架。更具体地说,是Hook
。
钩子的问题使它不断重定向到[website].com
,试图访问默认控制器welcome
...然后重定向,依此类推。
哦,小事!
感谢大家的帮助!
答案 2 :(得分:1)
我通过设置&#34; $ config [&#39; sess_encrypt_cookie&#39;]&#34;的值来解决了这个问题。到&#34; TRUE&#34; 在我的情况下,这是由于安全级别对cookie值进行了清理。 但加密cookie数据解决了这个问题。