条件を判断する if ディレクティブです。server , location ブロックに 置くことができます。
if ![]() ![]() |
但し、nginx の if は一般的なものではなく、利用することが出来るディレクティブ
に制限があるために、location
で行える場合にはそちらを使うべきです。
condition には以下のものが利用できます。
'='
または '!='
が利用できる
~
,~*
, !~
, !~*
!~
, !~*
による比較ができる。キャプチャにより、
$1...$9
変数による後方参照もできる。もし、正規表現に }
や
;
が含まれる場合には、シングルあるいはダブルクォートで正規表現を
囲む必要があります。
-f
,!-f
演算子により
-d
,!-d
演算子により
-e
, !-e
演算子により
-x
,!-x
演算子により
#例 if ( $request_method = POST ) { return 405; } if ( $http_user_agent ~* MSIE ){ rewrite ^(.*)$ /msie/$1 break; } |