Codeigniter 301重定向

时间:2014-08-26 22:44:28

标签: .htaccess codeigniter mod-rewrite

我有一个正在运行的网站。它开始使用url中的index.php。我已经删除了它,但为了不复制内容,我需要在仍然使用index.php的任何现有路径上进行301重定向。

我的.htaccess文件如下所示:

RewriteEngine on

RewriteCond $1 !^(index\.php|robots\.txt|public|)

# Prevent CI index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]


RewriteRule   ^register   /index.php/register/ [L]

适用于domain.com/register

我如何才能将其获取至domain.com/index.php/register的301,但仍然只保留地址栏中的domain.com/register?

提前致谢。

1 个答案:

答案 0 :(得分:1)

尝试将其添加到最顶层(位于RewriteEngine on下方):

RewriteCond %{THE_REQUEST} \ /+index\.php([^\?\ ]*)
RewriteRule ^ /%1 [L,R=301]