ねらい:以下の条件で書き直したいと思います。
- ユーザー エージェントは、Iphone または Blackberry のいずれかです。
- URI に「redirect=false」はありません。
私はうまくいくと思っていた以下のコードを持っていますが、そうではありません。ユーザーエージェントが設定されている場合は常にリダイレクトされますが、$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;
}
}
もう 1 つのオプションは、リダイレクトの false 条件を、場所が / であるがサブ フォルダーではない場合のみに置き換えることです。