порядок обработки locations

Igor Sysoev is at rambler-co.ru
Tue Nov 16 11:56:52 MSK 2004


On Tue, 16 Nov 2004, Aleksey I Zavilohin wrote:

> В Втр, 16.11.2004, в 13:09, Igor Sysoev пишет:
> > On Tue, 16 Nov 2004, Alexander Popkov wrote:
> >
> > > Tuesday, November 16, 2004, 10:23:43 AM, you wrote:
> > > IS> Кстати, наверное, нужно сделать такие locations, после которых regexp'ы бы
> > > IS> не обрабатывались. Только вот как это обозначить ? Сейчас есть такие locations:
> > >
> > > IS>    location /url/         обычный
> > > IS>    location = /url/       точное равентсво
> > > IS>    location ~ /url/       регулярное выражение
> > > IS>    location ~* /url/      регулярное выражение без учёта регистра
> > >
> > > IS> Насколько интуитивно понятно выглядит такой вариант:
> > >
> > > IS>    location !~ /url/      обычный locaiton, для которого не нужно применять
> > > IS>                           регулярные выражения
> > >
> > > Может появится ассоциация что это не обычный location, а именно
> > > регулярное выражение (изза символа ~), а восклицательный знак можно
> > > воспринять как отрицание, тоесть location который подразумевает все
> > > что не подходит под его регулярку.
> >
> > Именно это я и имел ввиду говоря про интуитивность. Люди с perl background
> > воспринимает !~ как отрицание регулярного выражения.
> >
> > > Но другие варианты в голову не лезут, видимо это самый оптимальный
> > > все же.
> >
> > Вот-вот. На мой взгляд
> >
> > location /url/ {
> >     regexp_locations off;
> > }
> >
> > громоздко.
>
> зато имхо более понятно 8-/ только может быть ввести "правило остановки"
> раз обработка идет "линейно" по конфигу для одних типов location?
> т е типа
> location /url/ {
> 	stop_location;
> }
> т е stop_location - как директива прекращения просмотра - и использовать
> ее можно в любом location не только в обычном, но и в regexp

А какой смысл останавливать поиск для обычных locations ? Внутре locations
сортируются и как только буквы становятся больше, поиск прекращается.


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list