【发布时间】:2010-11-26 08:33:58
【问题描述】:
我需要进行一堆 301 重定向,其中包含来自同一个 .htaccess 文件的不同域。我可以为每个规则编写一个 RewriteCond,如下所示,它工作正常:
RewriteCond %{HTTP_HOST} www.domain1.com [NC]
RewriteRule old-url-1a.htm /new-url-1a [L,R=301]
RewriteCond %{HTTP_HOST} www.domain1.com [NC]
RewriteRule old-url-1b.htm /new-url-1b [L,R=301]
RewriteCond %{HTTP_HOST} www.domain2.com [NC]
RewriteRule old-url-2a.htm /new-url-2a [L,R=301]
RewriteCond %{HTTP_HOST} www.domain2.com [NC]
RewriteRule old-url-2b.htm /new-url-2b [L,R=301]
但是使用这种方法,我需要为每个单独的 URL 编写 2 行代码,这会变得非常冗长和重复(相同的 RewriteCond 会重复很多次)。 有什么方法可以从 RewriteRule 指令本身匹配 HTTP_HOST 吗?沿着这些思路(概念上):
RewriteRule www.domain1.com/old-url-1a.htm /new-url-1a [L,R=301]
RewriteRule www.domain1.com/old-url-1b.htm /new-url-1b [L,R=301]
RewriteRule www.domain2.com/old-url-2a.htm /new-url-2a [L,R=301]
RewriteRule www.domain2.com/old-url-2b.htm /new-url-2b [L,R=301]
谢谢。
【问题讨论】:
标签: .htaccess mod-rewrite