从Codeigniter 2中的URL中删除index.php

时间:2013-08-30 10:06:02

标签: .htaccess

我在root的子文件夹中安装了codeigniter,访问我的应用程序的当前URL如下:

http://www.site.com/subfolder/index.php/controller/action

我想从网址中删除index.php,因此我创建了一个.htaccess文件,文件如下所示;

Options -Indexes
Options +FollowSymLinks
RewriteEngine on
RewriteBase /subfolder
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

我也编辑了

$config['index_page'] = 'index.php'; 

要:

$config['index_page'] = '';

$config['uri_protocol'] = 'root';

要:

$config['uri_protocol'] = 'REQUEST_URI';

然后我尝试了网址:

www.site.com/subfolder/controller/action

但它显示了一个Not found错误页面,当我将网址编辑为:

时,我的页面正常工作
www.site.com/subfolder/?/controller/action

1 个答案:

答案 0 :(得分:0)

尝试像这样改变你的.htaccess

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /subfolder/index.php/$1 [L]