1

尝试将此查询重定向到新域:

www.domain.com/search.php?q=keyword

www.newdomain.com/search.php?q=keyword

关键字可以是任何单词

并且想将其余部分保留在域中,我只需要重定向此查询。我尝试了几种方法,我发现更接近解决方案的一种方法是:

RewriteEngine On
RewriteCond %{QUERY_STRING} ^q=1$
RewriteRule ^search\.php$ http://www.newdomain.com/search.php?q=$1 [R=301,L]

但不起作用!希望有人可以帮助我纠正这个问题,如果这是完成这项工作的最佳方式?非常感谢。

4

3 回答 3

1

你很接近。

通过启用 mod_rewrite 和 .htaccess httpd.conf,然后将此代码放在您.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^(www.)?domain\.com$ [NC]
RewriteCond %{QUERY_STRING} ^q=.+ [NC]
RewriteRule ^(search\.php)$ http://www.newdomain.com/$1 [R=301,L,NC]
于 2013-07-29T12:38:50.460 回答
1

尝试这个

RewriteEngine On
RewriteCond %{QUERY_STRING} ^id=123$
RewriteRule ^/?product\.php$ http://website.com.au/product_123.php? [L,R=301]

或者

RewriteEngine On
RewriteCond %{QUERY_STRING} ^id=([^&]+)
RewriteRule ^/?product\.php$ http://website.com.au/product_%1.php? [L,R=301]
于 2013-07-29T12:34:53.317 回答
0

这很有效而且很简单

RewriteEngine on
RewriteRule ^(.*)$ http://newdomain.com/$1 [QSA]
于 2014-02-02T08:58:57.353 回答