去掉CodeIgniter URL中的index.php

1. 打开apache的配置文件,conf/httpd.conf :

LoadModule rewrite_module modules/mod_rewrite.so,把该行前的#去掉。

 

2.在conf/httpd.conf文件中搜索.htaccess相关的 AllowOverride None(配置文件中有多处),看注释信息,将相关.htaccess的该行信息改为AllowOverride All。

这个好像是虚拟机那个配置,不行你全部都设置成All 再试就知道是哪一个了。

 

3. 在CI的根目录下,即在index.php,system的同级目录下,建立.htaccess,直接建立该文件名的不会成功,可以先建立记事本文件,另存为该名的文件即可。内容如下(CI手册上也有介绍):

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f        //此处有大坑。加上这句可保证一般css、js文件正常加载。(注意删掉这句注释哦)
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

 

4.CodeIgniter\application\config 里配置改成 $config['index_page'] = '';

 

ok,完成。还要记得重启apache。

你可能感兴趣的:(CodeIgniter)