2014-01-06 44 views
1

我正在寻找一个htaccess规则301重定向旧域搜索结果页,以保留只有“查询”参数的新域名结果页面。重定向旧网站与查询到新域查询

例如:从http://myoldwebsite.com/search?query=free+templates&type=post&submit=更改为http://mynewwebsite.com/?s=free+templates

我发现了一种手动重定向每个网址的方法,但我认为有一种更简单的方法可以使用单个规则来完成此操作。

任何人都可以指向正确的方向吗?

回答

1

将这个代码在你DOCUMENT_ROOT/.htaccess文件:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(?:www\.)?myoldwebsite\.com$ [NC] 
RewriteCond %{QUERY_STRING} (?:^|&)query=([^&]*)(?:&|$) [NC] 
RewriteRule ^search/?$ http://mynewwebsite.com/?s=%1 [L,NE,R=301] 
+0

美丽的代码!非常感谢anubhava!这正是我需要的。我放弃了第一个RewriteCond,这工作完美(只需要查看该查询参数,以便我可以使用它大声笑)。 –

+0

不客气,很高兴它解决了。 – anubhava