从index.html重定向到/

时间:2014-03-01 18:59:47

标签: apache .htaccess redirect indexing

当index.html尝试在目录和子目录中加入时,我需要进行301重定向。

RewriteRule ^index\.html$ / [L,R=301]

当我尝试从example.com/index.html进行重定向时 - 一切正常,但是当我尝试从example.com/folder/index.html重定向到example.com/folder/时重定向到/(在example.com/folder /)中的.htaccess中使用相同的代码。

请帮助并展示组织我需要的最佳方式。

1 个答案:

答案 0 :(得分:1)

最好从root .htaccess处理所有这些重定向,并避免folder中的另一个.htaccess。

您可以在root .htaccess中使用此规则:

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

定位特定文件夹:

RewriteCond %{THE_REQUEST} /index\.html [NC]
RewriteRule ^((?:folder1|folder2)/)?index\.html$ /$1 [L,R=301,NC,NE]