我最近成功移动了域,但我没有意识到该网站有两个版本:www 和非 www
我想将流量从我的非 www 网站重定向到我的新域...
这是 iirf.ini 文件目前的样子:
RewriteCond %{HTTP_HOST} ^www\.foo\.com/? [NC]
RedirectRule ^(.*)$ http://www.bar.com$1 [L,R=301]
如何设置它以便它也重定向非 www 站点?
请帮忙,因为我很困惑。
尝试添加此规则:
RewriteCond %{HTTP_HOST} ^(bar|foo)\.com/? [NC]
RedirectRule ^(.*)$ http://www.bar.com$1 [L,R=301]
您不能在一个语句中重定向两个版本。好吧,您可能“可以”,但这不是正确的方法。正确的做法是这样的:
1)将旧域从 www 重定向到非 www 版本(在属于旧域的 .htaccess 文件中执行此操作)
2) 将新域从 www 重定向到非 www 版本(在属于新域的 .htaccess 文件中执行此操作)
3) 将旧域的旧非 www 版本重定向到新域的新非 www 版本(在属于旧域的 .htaccess 文件中执行此操作)
所以这里是演习:
1)这会将旧域从 www 重定向到非 www:
RewriteCond %{HTTP_HOST} ^www.olddomain.com [nc]
RewriteRule (.*) http://olddomain.com/$1 [R=301,L]
2)这会将新域从 www 重定向到非 www:
RewriteCond %{HTTP_HOST} ^www.newdomain.com [nc]
RewriteRule (.*) http://newdomain.com/$1 [R=301,L]
3)这会将旧域重定向到新域(非 www 版本):
RewriteCond %{HTTP_HOST} ^olddomain.com [NC]
RewriteRule ^(.*)$ http://newdomain.com/$1 [R=301,QSA,L]
网络级解决方案: 1. 将您的外部 DNS 指向 www 域的相同公共 IP,以便两个域都指向相同的 IP。
例如。www.abc.com - 111.111.111.111 adb.com - 111.111.111.111