【转】CI去掉index.php
2015-11-10 00:10
597 查看
感谢原作者:http://blog.csdn.net/spring21st/article/details/8334299
原文链接在:http://blog.csdn.net/spring21st/article/details/8334299
本人在apache2.4.9下亲测可用,感谢感谢。
--------------------------
由于使用的是windows开发环境,服务器用的是xampp,今天在做codeigniter 去掉index.php 的时候,需要用到apache的mod_rewrite.
首先需要配置下 Apache的mod_rewrite:
1. 在[Apache安装目录]/conf/httpd.conf中:
找到#LoadModule rewrite_module modules/mod_rewrite.so,去掉前面的注释符号#。
如果没有这行,请添加。并确认apache安装目录下的modules文件夹中是否有mod_rewrite.so这个文件。
这样就启用了Mod Rewrite功能。
2. 在[Apache安装目录]/conf/httpd.conf中找到
[python] view plaincopy
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
把“AllowOverride None”改成“AllowOverride All”,这样所有的文件夹都支持.htaccess了,或者针对指定的文件夹启用.htaccess,
可以在[Apache安装目录]/conf/httpd.conf中加入
[ruby] view plaincopy
<Directory "D:/Program Files/xampp/htdocs/mss">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
这种做法一般是和虚拟主机配置在一起的.
3. 我使用的是虚拟主机,所以第二步中的配置,我是在[Apache安装目录]/conf/extra/httpd-vhost.conf 中进行修改
[ruby] view plaincopy
<VirtualHost *:80>
ProxyPreserveHost On
DocumentRoot "D:/Program Files/xampp/htdocs/mss"
ServerName xxx.music.baidu.com
DirectoryIndex index.php
<Directory "D:/Program Files/xampp/htdocs/mss">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
重启Apache,mod_rewrite 生效!
4. 剩下是codeigniter的修改,it's very important!!!
将 .htaccess 修改为
[php] view plaincopy
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
然后移至网站根目录!(切记,否则还是访问还是无效的。)
其它操作系统下Apache rewrite配置可以参见: http://dancewithnet.com/2010/05/29/making-mod-rewrite-and-htaccess-work-on-mac-os-x/
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文链接在:http://blog.csdn.net/spring21st/article/details/8334299
本人在apache2.4.9下亲测可用,感谢感谢。
--------------------------
由于使用的是windows开发环境,服务器用的是xampp,今天在做codeigniter 去掉index.php 的时候,需要用到apache的mod_rewrite.
首先需要配置下 Apache的mod_rewrite:
1. 在[Apache安装目录]/conf/httpd.conf中:
找到#LoadModule rewrite_module modules/mod_rewrite.so,去掉前面的注释符号#。
如果没有这行,请添加。并确认apache安装目录下的modules文件夹中是否有mod_rewrite.so这个文件。
这样就启用了Mod Rewrite功能。
2. 在[Apache安装目录]/conf/httpd.conf中找到
[python] view plaincopy
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
把“AllowOverride None”改成“AllowOverride All”,这样所有的文件夹都支持.htaccess了,或者针对指定的文件夹启用.htaccess,
可以在[Apache安装目录]/conf/httpd.conf中加入
[ruby] view plaincopy
<Directory "D:/Program Files/xampp/htdocs/mss">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
这种做法一般是和虚拟主机配置在一起的.
3. 我使用的是虚拟主机,所以第二步中的配置,我是在[Apache安装目录]/conf/extra/httpd-vhost.conf 中进行修改
[ruby] view plaincopy
<VirtualHost *:80>
ProxyPreserveHost On
DocumentRoot "D:/Program Files/xampp/htdocs/mss"
ServerName xxx.music.baidu.com
DirectoryIndex index.php
<Directory "D:/Program Files/xampp/htdocs/mss">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
重启Apache,mod_rewrite 生效!
4. 剩下是codeigniter的修改,it's very important!!!
将 .htaccess 修改为
[php] view plaincopy
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
然后移至网站根目录!(切记,否则还是访问还是无效的。)
其它操作系统下Apache rewrite配置可以参见: http://dancewithnet.com/2010/05/29/making-mod-rewrite-and-htaccess-work-on-mac-os-x/
版权声明:本文为博主原创文章,未经博主允许不得转载。
相关文章推荐
- 在PHP中使用FastCGI解析漏洞及修复方案
- 深入理解PHP内核(一)
- 深入理解PHP内核(二)之SAPI探究
- 如何使用PHP Embed SAPI实现Opcodes查看器
- php实现可运算的验证码
- 谈谈你对Zend SAPIs(Zend SAPI Internals)的理解
- 深入php内核之php in array
- PHP设计模式之:单例模式
- thinphp 自定义标签,非常方便在模板读取数据。
- thinkphp3.2+完美可用PHPMailer库
- PHP获取当前URL路径的处理(适用于多条件筛选列表)
- PHP利用公钥私钥进行高强度加密
- PHP 7编译安装测试
- ShortestPath:Layout(POJ 3169)(差分约束的应用)
- PHP和织梦正则preg_match获取顶级域名
- 使用PHP的反射Reflection获取对象信息
- PHP MYSQL登陆和模糊查询
- 超级强悍的PHP代码编辑器PHPstorm及配置
- STP的根端口与指定端口
- php面向对象之_get(),_set()拦截器