ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: allow/deny and return



Hello!

On Tue, Oct 15, 2013 at 03:59:53PM +0300, Gena Makhomed wrote:

> On 15.10.2013 15:45, Maxim Dounin wrote:
> 
> >>В такой конфигурации:
> >>
> >>location /closed {
> >>   allow 10.1.1.1;
> >>   deny all;
> >>   return 200 "secret\n";
> >>}
> >>
> >>allow/deny ни на что не влияют.
> >>
> >>IMHO стоит написать об этом в документации, момент не очевидный с первого 
> >>взгляда.
> >
> >Если ты готов предолжить хороший способ написать об этом - мы с
> >удовольствием.
> >
> >Я, например, хорошего способа не знаю.  Потому что не с первого
> >взгляда - момент в общем-то очевидный (у прочитавших документацию
> >на модуль rewrite вопросов, как мне кажется, возникнуть не
> >должно), а как это корректно рассказать не читавшим...
> 
> в документации http://nginx.org/en/docs/http/ngx_http_access_module.html
> ничего не написано о том, что директивы allow и deny работают не всегда.
> 
> я прочитал http://nginx.org/en/docs/http/ngx_http_rewrite_module.html
> но так и не смог понять, почему allow и deny тут не будут работать.

Потому что директивы модуля rewrite - это фактически часть выбора 
конфигурации.  И именно от выбранной конфигурации зависит, что 
можно, а что - нельзя.

> это все похоже на BUG, потому что пользователи обычно подразумевают,
> что сначала работает access module и только потом - rewrite_module.
> 
> по крайней мере, в UNIX и даже в WINDOWS все работает именно так:
> если доступа к файлу нет, никаких операций с ним сделать нельзя.

В Антоном конфиге нет файла.  Есть инструкция "при выборе 
конфигурации для обработки запросов вернуть ответ с кодом 200".

(И да, я таки считаю, что возможность задавать тело ответа была 
добавлена в диркетиву return зря, не её это работа.  Надо было 
сделать отдельный модуль a la empty gif, подобных вопросов было бы 
меньше.  Но таки этот фарш уже поздно проворачивать назад.)

-- 
Maxim Dounin
http://nginx.org/en/donation.html

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.