目标:我想根据以下条件重写:
我有以下代码,我认为可行,但没有。如果设置了用户代理,它只会重定向,但会忽略$uri
条件。
location / {
if ( $uri ~* "redirect=false" ) {
set $var_redirect F;
}
if ( $http_user_agent ~* "iPhone|BlackBerry" ) {
set $var_redirect "${var_redirect}M";
}
if ( $var_redirect = M ) {
rewrite ^ http://m.domain.com redirect;
}
}
另一个选项是仅在位置为/但不是子文件夹的情况下将重定向错误条件替换为
答案 0 :(得分:1)
如果参数中发送了redirect=false
,我认为您需要在$uri
条件中将$args
替换为redirect=false
,之后nginx版本也可以使用{{1} }}