Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Принудительно обновить/ очистить кеш для определ енного локейшена
On Thu, Jan 28, 2010 at 01:13:41PM +0200, Denis Kot wrote:
> 28 января 2010 г. 13:01 пользователь Igor Sysoev <igor@xxxxxxxxx> написал:
> > On Thu, Jan 28, 2010 at 11:17:21AM +0200, Denis Kot wrote:
> >
> >> Требуется раз в сутки, допустим в 8оо обновлять картинки в
> >> кеше/очищать кеш картинок, которые находятся по определенному пути,
> >> например /blablabla/images/stat/
> >> сейчас прописано так:
> >>
> >> proxy_cache_path /var/nginx/cache
> >> levels=1:2 keys_zone=name:64m max_size=512m
> >> inactive=2h;
> >>
> >> location ~*
> >> ^.+\.(jpg|jpeg|gif|gz|zip|flv|rar|wmv|avi|css|swf|png|htc|ico|mpeg|mpg|txt|mp3|mov|js)$
> >> {
> >> expires 24h;
> >> log_not_found off;
> >> error_page 404 = @fetch;
> >> }
> >>
> >> location @fetch {
> >> internal;
> >> proxy_pass http://domain.ru;
> >> proxy_cache name;
> >> proxy_cache_min_uses 1;
> >> proxy_cache_valid 200 24h;
> >> proxy_cache_valid any 0;
> >> }
> >>
> >> т.е. по идее все картинки и файлы обновляются раз в 24 часа, так? или
> >> они обновляются только если с момента последнего кода 200 прошло 24
> >> часа?
> >
> > Ответ обновится, если со времени его получения прошло больше 24 часов.
>
> Со времени 1-го 200 ответа на определенный урл или с последнего ответа?
> Т.е. например есть http://domain.ru/image.png
> запросили его первый раз, получили 200, закешировали. потом народ его
> активно в течение суток запрашивает и получает из кеша и каждый раз
> получает 200. 24h с какого момента считается?
Со времени получения от бэкенда.
> >> нужно картинки в /blablabla/images/stat/ обновлять раз в 24 часа, а
> >> остальное можно и раз в 48 часов.
> >> при чем /blablabla/ может быть разный. т.е. /blabla/... и
> >> /blablabla/..., т.е. локейшн /stat/ надо взять из середины URI
> >
> > А откуда взялась конструкция с @fetch ? По аналогии с proxy_store ?
>
> взял из какого-то примера в интернете.
К сожалению, в интернете много мусора.
> > Для proxy_cache она не нужна:
> >
> > location ~*
> > ^.+/stat/.+\.(jpg|jpeg|gif|gz|zip|flv|rar|wmv|avi|css|swf|png|htc|ico|mpeg|mpg|txt|mp3|mov|js)$
> > proxy_cache_valid 200 48h;
> > proxy_pass http://domain.ru;
> > proxy_cache name;
> > proxy_cache_min_uses 1;
> > }
> >
> > location ~*
> > ^.+\.(jpg|jpeg|gif|gz|zip|flv|rar|wmv|avi|css|swf|png|htc|ico|mpeg|mpg|txt|mp3|mov|js)$
> >
> > proxy_pass http://domain.ru;
> > proxy_cache name;
> > proxy_cache_min_uses 1;
> > proxy_cache_valid 200 24h;
> > }
>
> т.е. наоборот. там 24h, а там 48h.
Значит, наоборот.
--
Игорь Сысоев
http://sysoev.ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|