2012-10-20 164 views
1

我有一个域名www.domainA.com我想按照以下方式将其重定向到domainB.htaccess - 重定向域名

www.domainA.com - >www.domainB.com
www.domainA.com/anything - >www.domainB.com/rebrand

我怎么能在htaccess的做到这一点,我已经做了下面的代码,但它重定向到只有/rebrand/

RewriteCond %{REQUEST_URI} ^\/ 
RewriteRule ^\/$ http://www.domainB.com/ [L,R=301] 

RewriteCond %{HTTP_HOST} ^domainA\.com$ [NC] 
RewriteRule ^(.*)$ http://www.domainB.com/rebrand/ [L,R=301] 

回答

2

通过htaccess文件中规则的URI的前导斜线被剥离,所以你无法与它匹配。对于第二条规则,因为不被应用的第一条规则,你的正则表达式匹配任何或没有它匹配/要求,你可以修复,通过改变*+

RewriteCond %{HTTP_HOST} ^domainA\.com$ [NC] 
RewriteRule ^/?$ http://www.domainB.com/ [L,R=301] 

RewriteCond %{HTTP_HOST} ^domainA\.com$ [NC] 
RewriteRule ^(.+)$ http://www.domainB.com/rebrand/ [L,R=301] 
0

通过htaccess的重定向是棘手有时,也有实现的许多方面,但有从webmaster world forum

工作对我来说

Options +FollowSymLinks 
RewriteEngine on 
RewriteRule (.*) [newdomain.com...] [R=301,L] 

,您可以得到更多的信息一个简单的方法