我有2个域名,一个是旧域名,另一个是最新域名。
使用.htaccess
文件将旧域上的所有网址重定向到新域的最佳方法
例如,如果我转到old-domain.com/test
,它会重定向到new-domain.com/test
,或者如果我转到sub.old-domain.com
,它会重定向到sub.new-domain.com
答案 0 :(得分:1)
您希望使用RewriteCond
规则和%{HTTP_HOST}
参数匹配“旧”域,并根据需要重定向到“新”域。如果匹配,请使用RewriteRule
创建通配符匹配组以执行301重定向。
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} (www\.)?old-domain\.com [NC]
RewriteRule (.*) http://www.new-domain.com/$1 [R=301,NC,QSA,L]
使用http://htaccess.madewithlove.be/
进行测试input url
http://old-domain.com/test
output url
http://www.new-domain.com/test
debugging info
1 RewriteEngine on
2 RewriteBase /
3 RewriteCond %{HTTP_HOST} (www\.)?old-domain\.com [NC]
This condition was met
4 RewriteRule (.*) http://www.new-domain.com/$1 [R=301,NC,QSA,L]
This rule was met, the new url is http://www.new-domain.com/test
The tests are stopped, using a different host will cause a redirect