我正在尝试 301 将所有 url(包括带有查询字符串的 url)重定向到新域上的一个页面。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www'.)?domain1'.com$ [NC]
RewriteRule ^(.*)$ "http://www.domain2.com/" [R=301,L]
问题是这不会从 URL 中删除查询字符串。它重定向
domain1.com/?PageAction=VIEWPROD&ProdID=57&HS=1
自
domain2.com/?PageAction=VIEWPROD&ProdID=57&HS=1
而不是
domain2.com/
使用此规则从生成的 URL 中删除查询字符串:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www'.)?domain1'.com$ [NC]
RewriteRule ^ http://www.domain2.com/? [R=301,L]
请注意http://www.domain2.com/?
末尾的?
,以去除原始 URL 中的任何现有查询字符串。