解析如何去掉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 相关文章推荐
基于qmail的完整WEBMAIL解决方案安装详解
Oct 09 PHP
杏林同学录(一)
Oct 09 PHP
PHP+MySQL 手工注入语句大全 推荐
Oct 30 PHP
php 格式化数字的时候注意数字的范围
Apr 13 PHP
队列在编程中的实际应用(php)
Sep 04 PHP
检测png图片是否完整的php代码
Sep 06 PHP
php防止SQL注入详解及防范
Nov 12 PHP
PHP数字和字符串ID互转函数(类似优酷ID)
Jun 30 PHP
基于JQuery+PHP编写砸金蛋中奖程序
Sep 08 PHP
smarty学习笔记之常见代码段用法总结
Mar 19 PHP
php简单检测404页面的方法示例
Aug 23 PHP
PHP使用openssl扩展实现加解密方法示例
Feb 20 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程序的国际化实现方法(利用gettext)
2011/08/14 PHP
php实现多张图片上传加水印技巧
2013/04/18 PHP
thinkphp3查询mssql数据库乱码解决方法分享
2014/02/11 PHP
php去除数组中重复数据
2014/11/18 PHP
PHP设计模式之工厂模式(Factory Pattern)的讲解
2019/03/21 PHP
提高javascript效率 一次判断,而不要次次判断
2012/03/30 Javascript
javascript的内存管理详解
2013/08/07 Javascript
js 获取元素下面所有li的两种方法
2014/04/14 Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
2015/08/07 Javascript
jQuery满意度星级评价插件特效代码分享
2015/08/19 Javascript
JS清除字符串中重复值的实现方法
2016/08/03 Javascript
D3.js实现饼状图的方法详解
2016/09/21 Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
2016/12/27 Javascript
bootstrap滚动监控器使用方法解析
2017/01/13 Javascript
nodejs服务搭建教程 nodejs访问本地站点文件
2017/04/07 NodeJs
vue实现nav导航栏的方法
2017/12/13 Javascript
vue-cli3全面配置详解
2018/11/14 Javascript
详解Vue.js在页面加载时执行某个方法
2018/11/20 Javascript
vue.js使用v-model实现表单元素(input) 双向数据绑定功能示例
2019/03/08 Javascript
微信小程序把百度地图坐标转换成腾讯地图坐标过程详解
2019/07/10 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
浅谈JavaScript窗体Window.ShowModalDialog使用
2020/07/22 Javascript
Python实现将n个点均匀地分布在球面上的方法
2015/03/12 Python
Django中使用locals()函数的技巧
2015/07/16 Python
用Python抢过年的火车票附源码
2015/12/07 Python
python3+PyQt5图形项的自定义和交互 python3实现page Designer应用程序
2020/07/20 Python
对pandas中两种数据类型Series和DataFrame的区别详解
2018/11/12 Python
pytorch 自定义参数不更新方式
2020/01/06 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
python 爬虫基本使用——统计杭电oj题目正确率并排序
2020/10/26 Python
Python爬虫中Selenium实现文件上传
2020/12/04 Python
日本订房网站,预订日本星级酒店/温泉旅馆:Relux(支持中文)
2020/01/03 全球购物
安全员岗位职责
2013/11/11 职场文书
学生检讨书范文
2014/10/30 职场文书
婚宴致辞
2015/07/28 职场文书
使用HTML+Css+transform实现3D导航栏的示例代码
2021/03/31 HTML / CSS