CodeIgniter 2.x和3.x修改默认控制器问题解答
Posted 寻觅beyond
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CodeIgniter 2.x和3.x修改默认控制器问题解答相关的知识,希望对你有一定的参考价值。
首先明确一点,CodeIgniter框架的2.x和3.x版本中修改默认控制器是有一点区别的
但相同的操作都是修改application/config/routes.php
$route[‘default_controller‘] = "welcome";
welcome为默认的控制器,通过该值来达到修改默认控制器的目的。假如我要把默认控制器设为home,只需要
$route[‘default_controller‘] = "home"; //$route[‘default_controller‘] = "home.html";
默认的扩展名是.php,如果扩展名不是.php的话,请加上扩展名,如上面代码的第二行。
有时候,可能控制器太多了,为了方便,一般都创建几个文件夹来保存控制器,但是,这个时候,修改默认控制器的时候,你就得小心了
因为在CodeIgniter 2.x中设置默认控制器时支持包含路径,即支持包含一级目录,而且只支持一级目录,即 目录/控制器名
比如在application/controller/下有一个test目录,test目录下有一个home控制器,要将该home目录设为默认控制器可按照下面代码完成
$route[‘default_controller‘] = "test/home";
注意下:目录名中不要包含点 ‘.‘ ,不然点后面的一段就会当成控制器,然而,你并没有那个控制器
重点来了:CodeIgniter 3.x是不支持设置默认控制器时用一级目录的形式,即上面的代码并不会管用,
你只能在那个位置填控制器名,而不能有目录
不然,即使你填了一级目录,那你访问的时候显示的也是404错误
以上是关于CodeIgniter 2.x和3.x修改默认控制器问题解答的主要内容,如果未能解决你的问题,请参考以下文章
不存在 URI。默认控制器集。 Codeigniter 3.1.9 和 PHP 7.0