Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: proxy_cache
Hello!
On Mon, Apr 11, 2011 at 06:22:50PM +0400, Anton Kiryushkin wrote:
> По Вашему совету изменил конфиг локейшена:
>
> proxy_cache one;
> proxy_ignore_headers Cache-Control Expires X-Accel-Redirect
> X-Accel-Expires Set-Cookie;
> proxy_hide_header "Set-Cookie";
> proxy_cache_key $proxy_host$uri$is_args$args;
> #proxy_cache_valid 200 100m;
> proxy_buffering on;
> proxy_cache_min_uses 1;
> proxy_cache_valid 404 502 1m;
> proxy_cache_valid 200 301 302 304 10m;
> proxy_cache_valid 503 4s;
> proxy_cache_valid any 1h;
>
> По сути ничего не изменилось.
Тогда (в отсутствии ругани в error log) наиболее вероятная причина -
для обработки запроса используется другой location и/или вообще
другой конфиг.
Убедится что nginx -t не ругается; добавить в соответствующий
location что-нибудь вроде "add_header X-Test test;" и убедиться что
он присутствует в ответах.
> Как можно проверить, почему ничего не попадает в кэш?
Посмотреть внимательно в debug log.
Maxim Dounin
p.s. Please do not top-post. Thank you.
>
> 11 апреля 2011 г. 16:40 пользователь Maxim Dounin <mdounin@xxxxxxxxxx>написал:
>
> > Hello!
> >
> > On Mon, Apr 11, 2011 at 04:32:59PM +0400, Anton Kiryushkin wrote:
> >
> > > Добрый день всем.
> > > Возникла странная проблема с proxy_cache на nginx 0.9.5. В конфиге nginx
> > в
> > > секции http прописано следующее:
> > >
> > > proxy_cache_path /var/www/nginx_cache levels=1:2 keys_zone=one:60m
> > > inactive=7d max_size=1000m;
> > > proxy_temp_path /var/lib/nginx/proxy_temp 1 2;
> > >
> > > proxy_cache_valid 404 502 1m;
> > > proxy_cache_valid 200 301 302 304 10m;
> > > proxy_cache_valid 503 4s;
> > > proxy_cache_valid any 1h;
> > >
> > > В конфиге локейшена прописано следующее:
> > >
> > > proxy_cache one;
> > > proxy_ignore_headers "Cache-Control" "Expires" "X-Accel-Redirect"
> > > "X-Accel-Expires";
> > > proxy_cache_key $proxy_host$uri$is_args$args;
> > > proxy_buffering on;
> > > proxy_cache_min_uses 1;
> > > proxy_cache_valid 404 502 1m;
> > > proxy_cache_valid 200 301 302 304 10m;
> > > proxy_cache_valid 503 4s;
> > > proxy_cache_valid any 1h;
> > >
> > > Вроде бы все верно, но папки кэша в /var/www/nginx_cache не создаются.
> > При
> > > этом nginx запущен от пользователя nginx и является владельцем этой
> > папки.
> > > Курение логово ошибок ничего путнего не показало, debug не делался.
> > >
> > > Может быть кто-то подскажет в какую сторону посмотреть.
> >
> > Посмотреть внимательно на заголовки, возвращаемые бекендом.
> > Скорее всего там присутствует заголовок Set-Cookie - он по
> > умолчанию запрещает кеширование.
> >
> > Чтобы не запрещал - его надо добавить в proxy_ignore_headers. В
> > зависимости от семантики устанавливаемых кук - скорее всего имеет
> > смысл также добавить proxy_hide_header Set-Cookie.
> >
> > Maxim Dounin
> >
> > _______________________________________________
> > nginx-ru mailing list
> > nginx-ru@xxxxxxxxx
> > http://nginx.org/mailman/listinfo/nginx-ru
> >
>
>
>
> --
> Best regards,
> Anton Kiryushkin,
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|