Добрый день. Почти неделю пытаюсь заставить кэшировать динамику. Пока что безуспешно. Подскажите какие параметры должен возвращать сервер чтобы nginx кэшировал динамически сгенерированный html? И что я делаю не так?
Сделал на динамике добавление Etag и Last-Modified в заголовок. Статика кэшируется отлично, с динамикой какие-то чудеса. Смотрю запросы между nginx и томкатом:
при первом обращении и статика и динамика отдаются, в кэше nginx появляются файлы. но htm среди них нету. при повторном обращении - между nginx и tomcat идет только один запрос на htm файл. при этом томкат отдает 304 код и пустое тело. а в браузере я все равно вижу страницу нормально.
Как избавиться от этого запроса между nginx и томкат?
Конфиг:
location / {
proxy_pass http://dynserver/;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header If-None-Match $http_if_none_match;
proxy_connect_timeout 20s;
proxy_send_timeout 30s;
proxy_read_timeout 30s;
proxy_cache wholepage;
proxy_cache_valid 200 301 302 304 1d;
proxy_cache_use_stale http_404 http_502;
proxy_cache_key "$request_method|$http_if_none_match|$host|$request_uri";
proxy_hide_header "Set-Cookie";
proxy_ignore_headers "Cache-Control" "Expires";
}