【问题标题】:404 error in Codeigniter URI remappingCodeigniter URI 重新映射中的 404 错误
【发布时间】:2014-07-19 18:55:33
【问题描述】:

我在重新映射 codeigniter 时遇到 404 错误,这是我的场景:

1-我有一个控制器:USER 2-当我的用户登录后,它将重定向到USER/DASHBOARD,但我在USER 控制器中没有任何名称为DASHBOARD 的功能,我给它一个名称为DASHBOARD 的特定控制器但是当我去的时候到 USER/DASHBOARD 它给了我 404 错误...

这是我到目前为止所做的:

1- 我的根 .htaccess 文件:

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
RewriteCond $1 !^(index\.php|images|css|robots\.txt)

2- 我的 config.php 更改:

$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';

3- 我的 routes.php 更改:

$route['user']="user";
$route['user/dashboard']="dashboard";

$route['default_controller'] = "main";
$route['404_override'] = "";

4- 我在 DASHBOARD 控制器中有 index() 函数,它给我的输出文本如下:

class Dashboard extends CI_Controller {

    public function index(){
        echo 'tst';
    }
}

感谢您的帮助 :)

【问题讨论】:

  • 所以你想这样做?让我们看看场景,用户登录并被重定向到用户/仪表板,并且您想使用控制器仪表板。为什么不直接在登录后重定向到 /dashboard?

标签: php .htaccess codeigniter uri


【解决方案1】:

routes.php

进行此更改
$route['default_controller'] = "main";
$route['404_override'] = "";
//reserved routes must be first

$route['user/dashboard'] = "dashboard";
//get rid of the user route, what does it do?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-09
    • 2011-10-03
    • 1970-01-01
    相关资源
    最近更新 更多