解析如何去掉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 相关文章推荐
MySQL相关说明
Jan 15 PHP
php中将汉字转换成拼音的函数代码
Sep 08 PHP
PHP应用JSON技巧讲解
Feb 03 PHP
php使用curl抓取qq空间的访客信息示例
Feb 28 PHP
ThinkPHP行为扩展Behavior应用实例详解
Jul 22 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
Jul 03 PHP
PHP 的Opcache加速的使用方法
Dec 29 PHP
PHP实现APP微信支付的实例讲解
Feb 10 PHP
php基于Redis消息队列实现的消息推送的方法
Nov 28 PHP
laravel框架中控制器的创建和使用方法分析
Nov 23 PHP
php获取小程序码的实现代码(B类接口)
Jun 13 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+apache+php Linux安装指南
2006/10/09 PHP
PHP isset()与empty()的使用区别详解
2010/08/29 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
PHP+ajax实现获取新闻数据简单示例
2018/05/08 PHP
基于jquery的监控数据是否发生改变
2011/04/11 Javascript
如何使用jQUery获取选中radio对应的值(一句代码)
2013/06/03 Javascript
js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)
2013/12/11 Javascript
jquery+json实现分页效果
2016/03/07 Javascript
jQuery插件扩展测试实例
2016/06/21 Javascript
jQuery 获取select选中值及清除选中状态
2016/12/13 Javascript
bootstrap提示标签、提示框实现代码
2016/12/28 Javascript
详解Jquery Easyui的验证扩展
2017/01/09 Javascript
微信小程序新增的拖动组件movable-view使用教程
2017/05/20 Javascript
基于EasyUI的基础之上实现树形功能菜单
2017/06/28 Javascript
jQuery实现html table行Tr的复制、删除、计算功能
2017/07/10 jQuery
jQuery实现的粘性滚动导航栏效果实例【附源码下载】
2017/10/19 jQuery
axios向后台传递数组作为参数的方法
2018/08/11 Javascript
微信小程序 调用微信授权窗口相关问题解决
2019/07/25 Javascript
Vue学习之常用指令实例详解
2020/01/06 Javascript
vue实现简单跑马灯效果
2020/05/25 Javascript
js实现简单音乐播放器
2020/06/30 Javascript
日常整理python执行系统命令的常见方法(全)
2015/10/22 Python
Python3实现带附件的定时发送邮件功能
2020/12/22 Python
Python模拟登录的多种方法(四种)
2018/06/01 Python
BP神经网络原理及Python实现代码
2018/12/18 Python
利用Python+阿里云实现DDNS动态域名解析的方法
2019/04/01 Python
python and or用法详解
2019/06/26 Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
2020/04/18 Python
详解python模块pychartdir安装及导入问题
2020/10/22 Python
python time.strptime格式化实例详解
2021/02/03 Python
联想印度官方网上商店:Lenovo India
2019/08/24 全球购物
Kipling澳洲官网:购买凯浦林包包
2020/12/17 全球购物
房屋租赁委托书范本
2014/10/04 职场文书
山东省召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
就业推荐表导师评语
2014/12/31 职场文书
汽车转让协议书
2015/01/29 职场文书