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错误
然而,虽然3.x不能设置一级目录,但是可以通过URL访问有多级目录的控制器中的方法,
比如在文件的application/controllers/admin/Hello.php中有一个默认的index方法
那么就可已通过 ..../index.php/admin/hello/index来访问
CodeIgniter 2.x和3.x修改默认控制器问题解答的更多相关文章
- Yii2.0修改默认控制器
设置默认控制器有两种方法 1.在/vendor/yiisoft/yii2/web/Application.PHP的第28行左右 public $defaultRoute = 'site'; ...
- yii2修改默认控制器
---------------------------------- 默认的控制器为site,修改文件 vendor\yiisoft\yii2\web\Application.php public $ ...
- CodeIgniter(3.1.4)框架中设置默认控制器
创建的目录结构: 如果是以上这种目录分布结构,则在controller文件夹下没有相应的控制器文件.如果在浏览器中直接使用 [http://localhost]则找不到相应的控制器. 必须进行以下设置 ...
- YII2如何修改默认控制器/方法
在网上找了非常多的方法,但是都不好使最后自己综合网上所有自己琢磨出来的,见笑了 首先Yii2中在/vendor/yiisoft/yii2/web/Application.php的第28行 public ...
- [YII2] 修改默认控制器Controller以及默认方法Action
试了好多方法都没成功,下面方法绝对能成功设置 在框架里面有源码,在/vendor/yiisoft/yii2/web/Application.php的第34行找到了: class Application ...
- wamp 修改默认apache 80端口
wamp server 环境安装包 修改默认80端口 D:\wamp\bin\apache\apache2.4.9\conf\httpd.conf 找到如下代码出修改后,重启apache即可 ## L ...
- Oracle 11g中修改默认密码过期天数和锁定次数
Oracle 11g中修改默认密码过期天数和锁定次数 密码过期的原因一般有两种可能: 一.由于Oracle中默认在default概要文件中设置了"PASSWORD_LIFE_TIME=180 ...
- MySQL修改默认字符集
今天朋友在做某个程序项目时,需要修改MySQL修改默认字符集,搞不好找我帮忙.百度了试了好几篇博文中的方法,最后终于成功了.但是感觉那些博文思路有点乱,所以自己总结下,希望可以帮到遇到同样问题的人. ...
- Ubuntu 14 修改默认打开方式
通过研究,有三种修改方式. 方式一: 修改路径:右上角“系统设置” -> 详细信息 -> 默认应用程序 但是,有个缺陷,可修改的项比较少. 方式二: 例如,修改pdf的打开方式,只要查看任 ...
随机推荐
- Properties集合概述与存和取
Properties集合:(Map集合下的Hashtable集合下的一个子类) 特点: 1.集合中的键和值都是字符串 2.集合中的数据可以保存到流中,或者从流中获取 该集合通常用于操作以键值对形式存在 ...
- Luogu P4707 重返现世
题目描述 为了打开返回现世的大门,Yopilla 需要制作开启大门的钥匙.Yopilla 所在的迷失大陆有 \(n\) 种原料,只需要集齐任意 \(k\) 种,就可以开始制作. Yopilla 来到了 ...
- (13)Python文件操作
- web socket RFC6455 frame 打包、解包
#ifndef __APP_WEBSOCKET_FRAME_H__ #define __APP_WEBSOCKET_FRAME_H__ #include "memory.hpp" ...
- PHP的运行机制与原理(底层)
原文:http://www.jb51.net/article/74907.htm 说到php的运行机制还要先给大家介绍php的模块,PHP总共有三个模块:内核.Zend引擎.以及扩展层:PHP内核用来 ...
- 【转】MySQL 当记录不存在时insert,当记录存在时update
MySQL当记录不存在时insert,当记录存在时更新:网上基本有三种解决方法 第一种: 示例一:insert多条记录 假设有一个主键为 client_id 的 clients 表,可以使用下面的语句 ...
- 斯坦福HAI—细数全球18件AI大事记
3 月 18 日,由李飞飞担任所长之一的「以人为本人工智能研究所」(HAI)自启动以来不短的时间后,终于完成了正式成立的高光时刻.而正式上线的官网日前也更新了两条博文,一篇是详尽介绍 HAI 的文章: ...
- docker常用命令汇总
生成镜像docker build -t="eureka" .打标记docker tag eureka:latest 172.16.120.194:5000/eureka:lates ...
- 错误:“Manifest merger failed with multiple errors, see logs”
今天用Android Studio打开以前写个的项目后,出现如下错误:Manifest merger failed with multiple errors, see logs 现象是: 遇到这个问 ...
- ftp 传输数据:命令链路连接方法是一样的,而数据链路的建立方法就完全不同
0.FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式. PORT(主动)连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请 求,服务器接受连接,建立一条命令链 ...