ngx_http_proxy_module и If-Modified-Since

Anton anton200 at gmail.com
Thu Nov 16 13:06:46 MSK 2006


Hi.

 Подскажите, понимает ли проксирующий модуль (ngx_http_proxy_module)
дату модификации, и как его заставить делать If-Modified-Since ?
 У меня стоял себе апач, выдавал Last-Modified, и говорил, типа
must-revalidate. Чтобы браузёры "переспрашивали" If-Modified-Since.
Апач имел такое:
RewriteCond %{QUERY_STRING} ^(.*)
RewriteRule .* - [E=HTTP_IF_MODIFIED_SINCE:%{HTTP:If-Modified-Since}]
и при "переспросе" скрипты могли видеть это дело и использовать.

Фаерфокс "переспрашивал", получал свой 304 и довольный выкатывал юзеру
старую (ибо не изменилась) страничку с диска.
IEхплорер саму страничку не переспрашивал, а грузил заново (сабака
сутулая, как его заставить делать If-Modified-Since...), однако
картинки "переспрашивал".

 Поставил фронтендом nginx. Так вот получается, что nginx всё также
делает как браузёр - не спросил браузёр If-Modified-Since, nginx тоже
не делает, грузит всё.

 Nginx вообще умеет сам делать это If-M...-S... ? То есть что бы там
браузёр у него не спросил - он бы сначала поглядел, что у него уже это
спрашивали и страничка есть в кэше, увидел бы что для неё есть
Last-Modified, переспросил бы у бакэнда, тот бы ему сказал : "304,
ничо не изменилось", и не надо было бы бакэнд напрягать передачей
всего файла...

-- 
engineer


More information about the nginx-ru mailing list