Welcome! Log In Create A New Profile

Advanced

proxy_cache_bypass $cookie_PHPSESSID;

February 18, 2011 06:42AM
Здравствуйте.

Имеется проксирующий nginx/0.8.53, от которого требуется отдавать кешированные странички незалогиненным пользователям, а залогиненных пользователей и пользователей с включенным дебагом пробрасывать на бекенд.

Конфигурация:
[code]
http{
proxy_cache_path /tmp/nginx-cache/main-cache levels=1:2 keys_zone=main:64m max_size=4g inactive=1h;
proxy_temp_path /tmp/nginx-cache/temp;
proxy_cache_key $scheme$proxy_host$uri$is_args$args;

...

server {
...

location = / {
proxy_cache main;
proxy_cache_min_uses 1;
proxy_cache_valid 200 10s;
proxy_cache_use_stale error timeout invalid_header http_500 http_502 http_503 http_504 updating;

proxy_no_cache $cookie_PHPSESSID $cookie_debug;
proxy_cache_bypass $cookie_PHPSESSID $cookie_debug;

proxy_pass http://backend/;
...
}
}

}
[/code]

Столкнулся со следующей проблемой: если session_id начинается с 0, то nginx считает пользователя гостем и отдает страницы из кеша. С дебагом проблем нет, потому что там либо 1 либо куки нет.
Наблюдал ли кто-нибудь похожую проблему? Как можно обойти кроме как использовать session_regenerate_id() до тех пор пока session_id не будет начинаться не с 0.
Subject Author Posted

proxy_cache_bypass $cookie_PHPSESSID;

buxley February 18, 2011 06:42AM

Re: proxy_cache_bypass $cookie_PHPSESSID;

Maxim Dounin February 18, 2011 07:48AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 138
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