Welcome! Log In Create A New Profile

Advanced

Re: проблема с add_header и if

Maxim Dounin
October 16, 2009 10:32AM
Hello!

On Fri, Oct 16, 2009 at 05:50:44PM +0400, Павел Хоружий wrote:

> Добрый день.
>
> Встретился со странной проблемой.
> Есть кусок конфига:
>
> set $var "";
> if ($arg_param != ""){
> set $var "asd";
> add_header Set-Cookie "coo1=1; path=/";
> add_header Set-Cookie "coo2=1; path=/";
> }
>
> if ($host ~* "test"){
> set $var "$var 123";
>
> add_header Set-Cookie "coo3=1; path=/";
> add_header Set-Cookie "coo4=1; path=/";
> }
>
> add_header test_header "$var";
>
> \\nginx 0.7.62
>
> 1. Если условия выполняются для обоих if, то заголовки из первого if в
> ответе клиенту не присутствуют, а заголовоки из второго есть.
> Если убрать из второго if заголовки, то для первого они все равно не
> появляются. Заголовок test_header отсутствует.
> 2. Если условие выполняется для одного из if, то присутствуют
> заголовки отработавшего сравнения, а заголовок test_header отсутвует.
> 3. Если убрать из второго if заговки, то в ответе присутствует только
> заголовок test_header.
>
> Что можете посоветовать?

Это ещё один known issue. If is evil. Не используйте в if()
ничего кроме return или rewrite ... last;.

Maxim Dounin

p.s. Надо было всё-таки сделать доклад про if() на highload.
Как-то так: "if() в конфигах nginx - 1001 способ прострелить себе ногу".
Subject Author Posted

проблема с add_header и if

Павел Хоружий October 16, 2009 10:02AM

Re: проблема с add_header и if

Maxim Dounin October 16, 2009 10:32AM

Re: проблема с add_header и if

Павел Хоружий October 16, 2009 10:48AM

Re: проблема с add_header и if

Alex, the Marrch Ca'at October 17, 2009 06:28PM

Re: проблема с add_header и if

Yuriy Taraday October 18, 2009 03:18AM

Re: проблема с add_header и if

Daniel Podolsky October 18, 2009 06:42AM

Re: проблема с add_header и if

Peter A Leonov October 18, 2009 08:00AM

Re: проблема с add_header и if

Daniel Podolsky October 18, 2009 08:24AM

Re: проблема с add_header и if

Daniel Podolsky October 18, 2009 08:24AM

Re: проблема с add_header и if

Alex, the Marrch Ca'at October 19, 2009 07:24AM

Re: проблема с add_header и if

Sergey Averyanov October 19, 2009 08:30AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 142
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready