无需查询即可重定向

时间:2019-03-29 12:26:44

标签: apache url-rewriting

我要将重定向形式从^mysite/设置为www.mynewsite.example

问题是www.mysite.example?test=test时我不希望这个方向。

当客户经过www.mysite.example时重定向应该起作用。

我尝试使用RewriteRule

^mysite.xhtml$ www.mynewsite.example [L,R=301,NC]

但是它仍然不起作用

RewriteRule ^mysite.xhtml$ www.mynewsite.example [L,R=301,NC]```

当我的网址是www.mysite.example?test=test

时,我不希望这个方向

1 个答案:

答案 0 :(得分:0)

当您的根网址包含?test=test查询字符串

时,您可以使用以下规则来停止网址重定向
RewriteEngine on

#if not ?test=test querystring
RewriteCond %{QUERY_STRING} !^test=test$ [NC]
#then Redirect the root url to www.newdomain.example
RewriteRule ^/?$ http://www.newdomain.example/ [L,R]

如果是动态值,则可以在上面的test=test中将test=.+替换为RewriteCond

^/?$与您的根URI相匹配,即。 /。如果要重定向整个站点,请用^.*$替换它。