кэширование динамики

Kubyshev Dmitry nginx-forum на nginx.us
Вт Дек 14 20:39:41 MSK 2010


Добрый день. Почти неделю пытаюсь
заставить кэшировать динамику. Пока
что безуспешно. Подскажите какие
параметры должен возвращать сервер
чтобы 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";

   }

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,158605,158605#msg-158605




Подробная информация о списке рассылки nginx-ru