rewrite

Igor Sysoev is at rambler-co.ru
Thu Feb 10 12:40:19 MSK 2005


On Thu, 10 Feb 2005, Andrey N. Oktyabrski wrote:

> Igor Sysoev wrote:
>> On Thu, 10 Feb 2005, Andrey N. Oktyabrski wrote:
>> 
>>> Igor Sysoev wrote:
>>> 
>>>>>>> Но сейчас last используется для прекращения обрабоки текущего набора
>>>>>>> правил, а не всего цикла. Поэтому нужно решить, как назвать 
>>>>>>> модификаторы
>>>>>>> для прекращения текущего набора и для прекращения всего цикла.
>>>>>>> 
>>>>>>> Варианты:
>>>>>>>    last, exit, quit, continue, again, last_cycle, что-то ещё.
>>>>>>> 
>>>>>> Предлагаю для конца текущего набора last, а для конца вообще - break;
>>>>> 
>>>>> 
>>>>> А можно и более явно - stop_rewrite
>>>> 
>>>> 
>>>> Я сделал в 0.1.18 break. Тут смысл не только в том, чтобы остановить
>>> 
>>> Я ответил раньше, чем увидел анонс 0.1.18 :-)
>>> 
>>>> rewrite, но и в том, чтобы после этого не определялся новый location.
>>> 
>>> Тогда ни то, ни другое слово не отражает смысл происходящего. Только 
>>> запомнить.
>> 
>> Наверное, done отражает лучше.
> Нет, одним словом интуитивно понятно не получится, так что либо ОДНА команда 
> остановки rewrite с флагами, отражающими то как его останавливать (только 
> текущий набор, весь цикл, определять ли при этом новый location и т.п.), либо 
> разные команды остановки rewrite (мнемоничные, типа 
> stop_rewrite_with_no_new_location, или которые надо только запомнить).

Остановки могут быть только две:

1) остановка текущего набора правил в server/location и переход
    к определению нового location;

2) и остановка всего цикла, новый location при этом не определяется,
    то есть, для запроса выставляется конфигурация того location, где
    выполнялся rewrite.


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





More information about the nginx-ru mailing list