limit_except

Maxim Dounin mdounin на mdounin.ru
Вт Фев 2 13:15:00 MSK 2010


Hello!

On Tue, Feb 02, 2010 at 12:41:23PM +0300, Игорь Хомяков wrote:

> привет!
> 
> у меня стоит nginx 0.7.62 (freebsd ports) у которого в upstream-ах
> несколько squid-ов
> 
> пробую разрешить метод PURGE только для своих IP
> location / {
>    limit_except GET {
>      allow  x.x.x.x/16;
>      deny   all;

+      proxy_pass http://cache;

>    }
>    proxy_pass http://cache;
>    proxy_set_header  Host   $host;
> }
> получаю
> 
> squidclient -l внешний_ip -p80 -m PURGE "мой URL"
> HTTP/1.1 405 Not Allowed
> Server: nginx/0.7.62
> Date: Tue, 02 Feb 2010 09:22:29 GMT
> Content-Type: text/html
> Content-Length: 173
> Connection: close
> 
> <html>
> <head><title>405 Not Allowed</title></head>
> <body bgcolor="white">
> <center><h1>405 Not Allowed</h1></center>
> <hr><center>nginx/0.7.62</center>
> </body>
> </html>
> 
> и никакой ругани в логах
> 
> если совсем убрать limit_except то все отлично работает
> если убратиться с другого ip то получаю понятный 403 Forbidden и запись в логе
> 
> я не правильно использую limit_except ?

proxy_pass внутрь блоков limit_expect, а равно внутрь вложенных 
location'ов, не наследуется

Maxim Dounin



Подробная информация о списке рассылки nginx-ru