如何从index.htm到root进行简单的301重定向?

时间:2010-03-19 13:28:30

标签: apache wordpress .htaccess mod-rewrite http-status-code-301

我在重定向上阅读了各种参考网站,说实话,我理解的很少。

我目前在.htaccess中有标准的WordPress mod_rewrite重定向规则:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

我的很多推荐人都转到旧网址http://www.example.com/index.htm,这会给他们一个错误,我希望他们能够无缝地重定向到http://www.example.com/。我相信301重定向是最好的方法。

我需要做什么?

3 个答案:

答案 0 :(得分:3)

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

这将以递归方式将所有出现的index.html或index.htm转换为该目录。

答案 1 :(得分:0)

我不是100%肯定,但我想这应该是RewriteRule ^index.htm$ / [R=301]或类似的东西

答案 2 :(得分:-2)

创建一个index.html,其中包含代码:

<HTML>
<HEAD>
<META HTTP-EQUIV="refresh" CONTENT="seconds;URL=the-other-url">
</HEAD>
<BODY>
You will be redirected...
</BODY>
</HTML> 

其中“秒”是重定向之前的延迟持续时间(以秒为单位)。为即时重定向设置“0”。

“the-other-url”是http://www.example.com/index.php