解析如何去掉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 相关文章推荐
xml+php动态载入与分页
Oct 09 PHP
基于mysql的论坛(1)
Oct 09 PHP
PHP 变量定义和变量替换的方法
Jul 30 PHP
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
Mar 23 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
PHP中filter函数校验数据的方法详解
Jul 31 PHP
php需登录的文件上传管理系统
Mar 21 PHP
php数组函数array_key_exists()小结
Dec 10 PHP
微信支付开发维权通知实例
Jul 12 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
Oct 08 PHP
PHP hex2bin()函数用法讲解
Feb 25 PHP
PHP Swoole异步MySQL客户端实现方法示例
Oct 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
如何将数据从文本导入到mysql
2006/10/09 PHP
PHP 实例化类的一点摘记
2008/03/23 PHP
PHP 中文处理技巧
2010/04/25 PHP
PHP中文乱码解决方案
2015/03/05 PHP
PHP按指定键值对二维数组进行排序的方法
2015/12/22 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2018/02/23 PHP
escape、encodeURI 和 encodeURIComponent 的区别
2009/03/02 Javascript
Javascript 验证上传图片大小[客户端]
2009/08/01 Javascript
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法
2010/04/27 Javascript
Javascript面向对象扩展库代码分享
2012/03/27 Javascript
JS跨域代码片段
2012/08/30 Javascript
JsRender实用入门教程
2014/10/31 Javascript
解析JavaScript实现DDoS攻击原理与保护措施
2016/12/26 Javascript
通过AngularJS实现图片上传及缩略图展示示例
2017/01/03 Javascript
bootstrap3中container与container_fluid外层容器的区别讲解
2017/12/04 Javascript
js中火星坐标、百度坐标、WGS84坐标转换实现方法示例
2020/03/02 Javascript
微信小程序返回上一级页面的实现代码
2020/06/19 Javascript
小程序点餐界面添加购物车左右摆动动画
2020/09/23 Javascript
[40:57]TI4 循环赛第二日 iG vs EG
2014/07/11 DOTA
Python中基本的日期时间处理的学习教程
2015/10/16 Python
Python实现将doc转化pdf格式文档的方法
2018/01/19 Python
python+Splinter实现12306抢票功能
2018/09/25 Python
PyQt5实现简单数据标注工具
2019/03/18 Python
python字符串中匹配数字的正则表达式
2019/07/03 Python
Django 中自定义 Admin 样式与功能的实现方法
2019/07/04 Python
Python使用itchat模块实现群聊转发,自动回复功能示例
2019/08/26 Python
git查看、创建、删除、本地、远程分支方法详解
2020/02/18 Python
python 检测图片是否有马赛克
2020/12/01 Python
python 图像增强算法实现详解
2021/01/24 Python
python绘图模块之利用turtle画图
2021/02/12 Python
python 基于pygame实现俄罗斯方块
2021/03/02 Python
Stuarts London美国/加拿大:世界领先的独立男装零售商之一
2019/03/18 全球购物
阿迪达斯印尼官方网站:adidas印尼
2020/02/10 全球购物
广告设计应届生求职信
2014/03/01 职场文书
开除员工通知
2015/04/22 职场文书
Python&Matlab实现樱花的绘制
2022/04/07 Python