proxy_no_cache / proxy_cache_bypass
Igor Sysoev
igor на sysoev.ru
Пт Июл 9 17:59:43 MSD 2010
On Fri, Jul 09, 2010 at 02:17:22PM +0400, Sergey Shepelev wrote:
> >>>> Логично, тогда можно раздедить так: proxy_cache_bypass определяет,
> >>>> брать ли ответ из кэша, а proxy_no_cache - класть ли ответ в кэш,
> >>>> если он был в состоянии bypass.
> >>>
> >>> Выглядит замечательно, четко и просто в понимании.
> >>> Вопросы могут возникнуть только в обратной совместимости конфигов.
> >>
> >> Такой вариант:
> >>
> >> proxy_no_cache убираем совсем.
> >> proxy_cache_bypass или proxy_bypass_cache (не знаю, что лучше
> >> по-английски)
> >> определяет, брать ли ответ из кэша.
> >> proxy_no_cache_bypass определяет класть ли ответ в кэш,
> >> если он был в состоянии bypass. Название говорящее.
> >
> > а вы не хотите такую же схему применить и к fastcgi_cache_* ?
> > отдельно условие кладём ли в кэш
> > и отдельно берём ли из кэша.
> >
>
> По-моему, было бы лучше вместо 4 {proxy,fastcgi,uwsgi,чтотамещё}_cache
> сделать один набор директив cache.
>
> location / {
> proxy_pass http://backend;
> proxy_set_header Host $host;
> cache_path ...;
> cache zone;
> }
>
> location /other {
> fastcgi_pass backend2;
> cache_path ...;
> cache zone;
> }
>
> Хотя, это, наверное, расходится с текущим дизайном модулей.
Там есть расхождения - например, для proxy ключ явно задавать не нужно,
а для прочих нужен. Ну и ещё есть отличия.
--
Игорь Сысоев
http://sysoev.ru
Подробная информация о списке рассылки nginx-ru