limit_except
は、制限の対象外のメソッドを指定し、
location コンテキストで利用できます。
limit_except method ... { ... } ; |
method には、
GET
, HEAD
, POST
, PUT
, DELETE
, MKCOL
,
COPY
, MOVE
, OPTIONS
, PROPFIND
, PROPPATCH
,
LOCK
, UNLOCK
, PATCH
が使えます。但し、
GET メソッドを許可すると、HEADメソッドも自動的に許可されます。
ここで明示していない他のメソッド
へのアクセスは、{...}
に指定された、
先に紹介したhttp_access_method
の allow,deny ディレクティブや、
次のBasic認証などで制限されます。
#例 location / { ... limit_except GET { allow 192.168.0.0/16; deny all; } } |
上の例では、 /
への HEAD, GET は無制限に許可されますが、
それ以外のメソッドは、192.168.0.0/16
からのアクセス以外は
全て禁止されます。
また、メソッドには、上に上げたメソッドを複数指定することが出来ます。
#例 location / { ... limit_except GET POST HEAD { allow 192.168.0.0/16; deny all; } } |