解析如何去掉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新手上路(五)
Oct 09 PHP
php 信息采集程序代码
Mar 17 PHP
PHP实现时间轴函数代码
Oct 08 PHP
php 过滤英文标点符号及过滤中文标点符号代码
Jun 12 PHP
C# WinForm中实现快捷键自定义设置实例
Jan 23 PHP
php获取发送给用户的header信息的方法
Mar 16 PHP
php将日期格式转换成xx天前的格式
Apr 16 PHP
PHP使用数组依次替换字符串中匹配项
Jan 08 PHP
php脚本运行时的超时机制详解
Feb 17 PHP
php利用云片网实现短信验证码功能的示例代码
Nov 18 PHP
Referer原理与图片防盗链实现方法详解
Jul 03 PHP
PHP保留两位小数的几种方法
Jul 24 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使用反射插入对象示例分享
2014/03/11 PHP
详解PHP中websocket的使用方法
2016/09/15 PHP
php中static和const关键字用法分析
2016/12/07 PHP
php+ajax+json 详解及实例代码
2016/12/12 PHP
PHP实现创建微信自定义菜单的方法示例
2017/07/14 PHP
jquery下操作HTML控件的实现代码
2010/01/12 Javascript
IE6 fixed的完美解决方案
2011/03/31 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
jQuery - css() 方法示例详解
2014/01/16 Javascript
javascript匿名函数实例分析
2014/11/18 Javascript
JS正则截取两个字符串之间及字符串前后内容的方法
2017/01/06 Javascript
JavaScript函数节流的两种写法
2017/04/07 Javascript
Node.js利用debug模块打印出调试日志的方法
2017/04/25 Javascript
小程序二次贝塞尔曲线实现购物车商品曲线飞入效果
2019/01/07 Javascript
你了解vue3.0响应式数据怎么实现吗
2019/06/07 Javascript
浅谈Vue项目骨架屏注入实践
2019/08/05 Javascript
bootstrap实现嵌套模态框的实例代码
2020/01/10 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
[00:32]2018DOTA2亚洲邀请赛VG出场
2018/04/03 DOTA
[01:11]steam端dota2实名认证操作流程视频
2021/03/11 DOTA
关于Python元祖,列表,字典,集合的比较
2017/01/06 Python
Numpy中stack(),hstack(),vstack()函数用法介绍及实例
2018/01/09 Python
名片管理系统python版
2018/01/11 Python
基于pip install django失败时的解决方法
2018/06/12 Python
详解js文件通过python访问数据库方法
2019/03/03 Python
python3通过selenium爬虫获取到dj商品的实例代码
2019/04/25 Python
通过Python编写一个简单登录功能过程解析
2019/09/04 Python
parser.add_argument中的action使用
2020/04/20 Python
python使用nibabel和sitk读取保存nii.gz文件实例
2020/07/01 Python
CSS3弹性伸缩布局之box布局
2016/07/12 HTML / CSS
Office DEPOT法国官网:欧迪办公用品采购
2018/01/03 全球购物
理肤泉美国官网:La Roche-Posay
2018/01/17 全球购物
澳大利亚厨房和家用电器购物网站:Bing Lee
2021/01/11 全球购物
公职人员索取回扣检举信
2014/04/04 职场文书
如何写好开幕词?
2019/06/24 职场文书
Python如何把不同类型数据的json序列化
2021/04/30 Python