Como passar variáveis através de try_files?

1

Considere esta configuração (dado que /foo não existe):

server {
    set $x 1;

    location = / {
        set $x 0;
        try_files /foo @l;
    }

    location / {
        try_files /foo @l;
    }

    location @l {
        set_header X $x;
        proxy_pass http://localhost:1000/;
    }
}

O cabeçalho de resposta X é sempre 1 , mesmo quando eu navego para / . Por que isso e como posso fazer com que as variáveis sejam propagadas por try_files ?

    
por rightfold 23.12.2014 / 16:30

1 resposta

2

Com base no seu comentário, o jeito certo de fazer o que você quer é usando a diretiva fastcgi_no_cache combinada com um mapa. Um exemplo para mostrar o que parece:

map $uri $cache {
    default      "1";
    "~^/myuri"   "0";
}

server {

    ...

    location / {
        fastcgi_no_cache $cache;
        fastcgi_pass ...
    }

}
    
por 23.12.2014 / 16:52

Tags