将子域名重定向到新域名

3

大家好,我正在尝试实现301重定向,但遇到了困难。我需要将sub.domain1.com重定向到www.domain2.com,并确保任何文件名或参数也一并被重定向。

以下是我尝试的代码:

RewriteCond %{HTTP_HOST} ^domain1.com [NC] 
RewriteRule ^(.*)$ http://www.domain2.com/$1 [L,R=301] 

我也尝试了这个:
RewriteCond %{QUERY_STRING}  ^$
RewriteRule ^sub\.domain1\.com$ /www.domain2.com? [R=301,NE,NC,L]

我哪里出了问题?

2个回答

2

你错过了子域名部分和适当的转义。

RewriteCond %{HTTP_HOST} ^sub\.domain1\.com$ [NC] 
RewriteRule ^(.*)$ http://www.domain2.com/$1 [L,R=301]

更详细的解释可以在这个问题中找到。


0

重写规则的经验法则:从最复杂到最简单。 并且不要忘记QSA指令(QSA = 查询字符串附加 =“确保任何文件名或参数随其一起发送”)。

RewriteCond %{HTTP_HOST} ^sub\.domain1\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain2.com/$1 [QSA,R=301,L]

告诉我它是否有效。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接