ngx_http_proxy_module и If-Modified-Since

Sergey Serov mpa at corg.net
Thu Nov 16 13:20:02 MSK 2006


On Thursday 16 November 2006 13:06, Anton wrote:
> 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,
> ничо не изменилось", и не надо было бы бакэнд напрягать передачей
> всего файла...

Модуль-то проксирующий, но не кеширующий.
По идее он пошлет апстриму все что послал ему клиент и наоборот.









More information about the nginx-ru mailing list