如何在Codeigniter中重定向和删除index.php

时间:2013-05-24 14:17:17

标签: php codeigniter .htaccess mod-rewrite redirect

我正在使用htaccess下面从Codeigniter中的url中删除index.php。

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

问题是用户仍然可以使用以下代码来访问该方法:

http://example.com/index.php/controller/method

如果他们添加index.php,我如何重定向到没有index.php的网址或将其发送到错误页面?

1 个答案:

答案 0 :(得分:8)

RewriteEngine On

RewriteRule ^index.php/(.*)$ /$1 [R=302,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]

第一条规则将用户非index.php网站重新定向到第二条规则和宾果游戏。