如何对子目录中的所有URL进行301重定向,以便它们重定向到特定页面但在根目录中

时间:2013-06-19 21:11:24

标签: redirect

如何从domain.com/subdirectory/url.htm执行301重定向到domain.com/url.htm,以便重定向以前在子目录中但现在位于根目录中的所有URL。我有这个

RedirectMatch 301 ^ /子目录/(.*)$ http://www.domain.com/

但是它将子目录中的所有页面重定向到主页,我希望它重定向到匹配的URL。

例如重定向 domain.com/subdirectory/blue.htm到domain.com/blue.htm

domain.com/subdirectory/yellow.htm到domain.com/yellow.htm

domain.com/subdirectory/red.htm到domain.com/red.htm

等等。

1 个答案:

答案 0 :(得分:3)

使用mod_rewrite

RewriteEngine on
RewriteRule ^subdirectory/(.*)$ /$1 [R=301,L]

R=301会导致301重定向。 L告诉解析器忽略以下任何规则。您可以通过$1$2$3等方式访问括号内匹配的部分。