Quantcast
Channel: Nginx Forum - Nginx Mailing List - Russian
Viewing all articles
Browse latest Browse all 3102

Проблема с add_header + try_files (1 reply)

$
0
0
Привет!

Имею такой конфиг

location ~ \.html {
gzip_static on;
root xxx;
try_files $uri /index.php$is_args$args;
}

Локейшен проверяет есть ли в ФС статический документ и отдает его клиенту из кеша, Если документа нет, то отдает управление переходит в локейшен, который обрабатывает php скрипты для генерации документа.

Потребовалось, сетить клиенту куку с ip клиента. Изменил конфиг:


location ~ \.html {
gzip_static on;
root xxx;

if ($cookie___lastip != $remote_addr) {
add_header Set-Cookie "__lastip=$remote_addr;Domain=$host;Path=/;Max-Age=31536000";
}

try_files $uri /index.php$is_args$args;
}


Если документ в кеше, то условие работает верно и если сменился ip или не было такой куки, то приходит кука в ответе от сервера.
А вот если документа нет в кеше и нет куки с таким именем или значение куки не равно ip адресу, то запрос возвращает 404. Try_files не находит документ, но в другой локейшен не заходит.

Не знаю баг это или нет.

Подскажите как можно решить данную задачу.

Viewing all articles
Browse latest Browse all 3102

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>