Re: Немного про логику кеша
Maxim Dounin
mdounin на mdounin.ru
Вт Май 21 14:22:25 UTC 2019
Hello!
On Tue, May 21, 2019 at 04:31:46PM +0300, kpoxa wrote:
> Есть некоторые директивы, про которые не совсем понятно, как они работают
> вместе, в частности у proxy_cache_path есть параметр inactive, который
> задаёт время жизни файла в кеше, считая с последнего обращения. А еще есть
> директива proxy_cache_valid, судя по описанию которой, которая тоже
> отвечает за что-то подобное, обозванное временем кеширования.
>
> И в связи с этим у меня вопрос:
> как мне настроить кеш так, чтобы 302 редиректы кешировались на 15 секунд?
> При настройках inactive=7d никакие варианты прописать proxy_cache_valid 302
> 15s не работают, в кеше куча вчерашних редиректов.
> И второй вопрос - при каких условиях и как работает proxy_cache_valid ?
> Пока что у меня не сходятся реальное поведение с документацией.
Директива proxy_cache_valid - определяет, сколько времени ответ в
кэше будет считаться валидным, то есть пригодным для возврата
клиенту. Используется, если клиент не вернул явного указания
через Cache-Control/Expires/X-Accel-Expires (или они
проигнорированы в соответствии с proxy_ignore_headers).
Параметр inactive директивы proxy_cache_path - определяет, сколько
времени ответ, возможно уже устаревший, будет хранится в кэше
после последнего обращения. Этот параметр - используется в первую
очередь для управления размером кэша на диске.
Когда inactive больше valid - в кэше будут храниться устаревшие
ответы. Такие ответы в норме не возвращаются клиентам, но могут
быть использованы, скажем, в случае ошибок, с помощью директивы
proxy_cache_use_stale.
--
Maxim Dounin
http://mdounin.ru/
Подробная информация о списке рассылки nginx-ru