将所有请求重定向到index.php而无需直接访问

时间:2013-11-27 10:03:28

标签: .htaccess redirect

我的.htaccess文件中有以下代码。

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

这会将所有请求重定向到index.php。但是,我仍然可以直接从URL访问www.mydomain.com/index.php。由于www.mydomain.com服务器与www.mydomain.com/index.php相同的内容将在谷歌中记录为重复,如果是这样,我该怎样阻止它。

1 个答案:

答案 0 :(得分:4)

在现有规则之前插入此规则,以从URI中删除index.php

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