【发布时间】:2015-03-12 07:00:02
【问题描述】:
我已经从 codeigniter 1.7 移动到 2.0,所以我将登录控制器中的 MY_Controller 替换为 CI_Controller 和 parent::MY_Controller(); 替换为 parent::__construct();,并且从登录控制器视图正在加载,在该视图中,我在文件的开头添加了退出不是因为其他文件而出现的问题。
现在,通过此更改,我的控制器错误消失了,但问题是我遇到了重定向循环错误。
如果我在parent::__construct(); 之前添加了退出,那么它工作正常,但是如果我在parent::__construct(); 之后添加了退出,它会重定向循环。
我的 hook.php 中没有任何 Writer
My route php is
$route['default_controller'] = "login";
$route["404_override"] = "";
Codigniter version is 2.0.2
LOGIN FILE ::
/public_html/projectname/application/controller/login.php
class Login extends CI_Controller
{
function __construct()
{ echo "test";exit // 在这里,它工作正常,无需循环
parent::__construct();
echo "test";exit // Here this will give redirect loop issue
}
}
/public_html/projectname/.htaccess
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
// route.php
$route['default_controller'] = "login";
$route["404_override"] = "";
【问题讨论】:
-
检查
MY_Controller文件。 -
它在库文件夹中,我现在对其进行了更改:从类 MY_Controller 扩展控制器到类 MY_Controller 扩展 CI_Controller 和从父级::Controller();给父母::__construct();同样的错误。
-
你能分享文件或部分标题和登录吗?
-
/public_html/projectname/application/controller/login.php class Login extends CI_Controller { function __construct() { echo "test";exit // 在这里,它工作正常,无需循环 parent:: __构造(); echo "test";exit // 这里会给出重定向循环问题 } }
-
/public_html/projectname/.htaccess RewriteEngine on RewriteCond $1 !^(index\.php|resources|robots\.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L,QSA]
标签: php codeigniter