解析如何去掉CodeIgniter URL中的index.php


Posted in PHP onJune 25, 2013

CI默认的rewrite url中是类似这样的,例如你的CI根目录是在/CodeIgniter/下,你的下面的二级url就类似这样http://localhost/CodeIgniter/index.php/welcome。不太好看,怎么把其中的index.php取掉呢?

1. 打开apache的配置文件,conf/httpd.conf :
LoadModule rewrite_module modules/mod_rewrite.so,把该行前的#去掉。
搜索 AllowOverride None(配置文件中有多处),看注释信息,将相关.htaccess的该行信息改为AllowOverride All。

2. 在CI的根目录下,即在index.php,system的同级目录下,建立.htaccess,直接建立该文件名的不会成功,可以先建立记事本文件,另存为该名的文件即可。内容如下(CI手册上也有介绍):

RewriteEngine on  
RewriteCond $1 !^(index\.php|images|robots\.txt)  
RewriteRule ^(.*)$ /index.php/$1 [L]

如果文件不是在www的根目录下,例如我的是:http://www.nowamagic.net/CodeIgniter/,第三行需要改写为RewriteRule ^(.*)$ /CodeIgniter/index.php/$1 [L]。
另外,我的index.php的同级目录下还有js文件夹和css文件夹,这些需要过滤除去,第二行需要改写为:RewriteCond $1 !^(index\.php|images|js|css|robots\.txt)

3.将CI中配置文件(system/application/config/config.php)中$config['index_page'] = "index.php";将$config['index_page'] = ""; 。

/*
|--------------------------------------------------------------------------
| Index File
|--------------------------------------------------------------------------| Typically this will be your index.php file, unless you've renamed it to
| something else. If you are using mod_rewrite to remove the page set this
| variable so that it is blank.
*/
$config['index_page'] = '';

重启apache
PHP 相关文章推荐
php fckeditor 调用的函数
Jun 21 PHP
php自动加载的两种实现方法
Jun 21 PHP
PHP源代码数组统计count分析
Aug 02 PHP
CodeIgniter使用phpcms模板引擎
Nov 12 PHP
详解PHP的Yii框架中的Controller控制器
Mar 29 PHP
thinkPHP分组后模板无法加载问题解决方法
Jul 12 PHP
总结PHP中数值计算的注意事项
Aug 14 PHP
PHP获取用户客户端真实IP的解决方案
Oct 10 PHP
php使用PDO获取结果集的方法
Feb 16 PHP
php readfile()修改文件上传大小设置
Aug 11 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
Mar 30 PHP
RSA实现JS前端加密与PHP后端解密功能示例
Aug 05 PHP
解析php入库和出库
Jun 25 #PHP
解析php下载远程图片函数 可伪造来路
Jun 25 #PHP
解析php通过cookies获取远程网页的指定代码
Jun 25 #PHP
使用dump函数,给php加断点测试
Jun 25 #PHP
解析php多线程下载远程多个文件
Jun 25 #PHP
基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)
Jun 25 #PHP
执行、获取远程代码返回:file_get_contents 超时处理的问题详解
Jun 25 #PHP
You might like
在PHP中利用XML技术构造远程服务(下)
2006/10/09 PHP
基于PHP Web开发MVC框架的Smarty使用说明
2013/04/19 PHP
json的键名为数字时的调用方式(示例代码)
2013/11/15 PHP
thinkphp中多表查询中防止数据重复的sql语句(必看)
2016/09/22 PHP
jquery异步请求实例代码
2011/06/21 Javascript
纯js网页画板(Graphics)类简介及实现代码
2012/12/24 Javascript
解析js如何获取当前url中的参数值并复制给input
2013/06/23 Javascript
jQuery简单实现彩色云标签效果示例
2016/08/01 Javascript
浅谈jQuery效果函数
2016/09/16 Javascript
js手机号批量滚动抽奖实现代码
2020/04/17 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
2017/03/13 Javascript
JavaScript实现的贝塞尔曲线算法简单示例
2018/01/30 Javascript
JQuery实现简单的复选框树形结构图示例【附源码下载】
2019/07/16 jQuery
微信小程序 如何获取网络状态
2019/07/26 Javascript
使用easyui从servlet传递json数据到前端页面的两种方法
2019/09/05 Javascript
基于javascript原生判断DOM是否加载完毕
2020/10/14 Javascript
[01:19:54]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#1Alliance VS EHOME
2016/03/03 DOTA
Python实例分享:快速查找出被挂马的文件
2014/06/08 Python
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
Python数据结构与算法之完全树与最小堆实例
2017/12/13 Python
wxPython的安装图文教程(Windows)
2017/12/28 Python
python利用微信公众号实现报警功能
2018/06/10 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
Python统计时间内的并发数代码实例
2019/12/28 Python
Python龙贝格法求积分实例
2020/02/29 Python
python代码中怎么换行
2020/06/17 Python
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
Foot Locker英国官网:美国知名运动产品零售商
2019/02/21 全球购物
sealed修饰符是干什么的
2012/10/23 面试题
总裁办公室主任职责
2014/01/02 职场文书
法律专业求职信
2014/05/24 职场文书
公司仓管员岗位职责
2015/04/01 职场文书
女性健康讲座主持词
2015/07/04 职场文书
CSS三大特性继承性、层叠性和优先级详解
2022/01/18 HTML / CSS
Python正则表达式中flags参数的实例详解
2022/04/01 Python