VovansystemS Wrote:
-------------------------------------------------------
> >> fastcgi_param HTTP_IF_NONE_MATCH $http_if_none_match
> if_not_empty;
> >> fastcgi_param HTTP_IF_MODIFIED_SINCE $http_if_modified_since
> if_not_empty;
> >
> > У вас в конфиге написано: установить заголовки If-None-Match и
> > If-Modified-Since в запросах к бекенду в полученные от клиента
> > значения. Ревалидация кеша в таких условиях работать не может по
> > очевидным причинам.
>
> убрал эти строки. удалил кеш. ристартанул nginx
> первая загрузка X-My-Cache: MISS (страницы нет в кеше)
> вторая загрузка X-My-Cache: HIT (есть в кеше, получаю закешированную
> версию)
> жду 10 секунд
> третья загрузка X-My-Cache: EXPIRED
>
> (а я ожидаю X-My-Cache: REVALIDATED )
>
Вы изначально в ответе отдавали заголовки валидаторы (ETag и/ил Last-Modified)?
Посмотрите на содержимое в папке кеша Nginx, есть ли там заголовки ETag и/ил Last-Modified, без них ревалидация кеша невозможно.