Hello! On Wed, May 08, 2013 at 09:31:32AM +0100, Anatoly Mikhailov wrote:
> > On May 8, 2013, at 12:23 AM, Maxim Dounin <mdou...@mdounin.ru> wrote: > > > Hello! > > > > On Tue, May 07, 2013 at 11:32:07PM +0100, Anatoly Mikhailov wrote: > > > >> Меня настораживает интересная закономерность, включая/отключая gzip в > >> конфигурации Nginx, > >> ETag заголовок пропадает/появляется соответственно в прокированном ответе > >> от бэкэнда (Unicorn). > >> Проще говоря, при gzip off ответ всегда приходит с ETag, все остальные > >> параметры на это не влияют. > >> > >> Бэкнэнд, если слушает порт, то легко убедиться, что он добавляет заголовок > >> ETag к каждому ответу, > >> и чтобы проксировать ETag заголовок через upstream приходится выключать > >> gzip. > >> Если я правильно понимаю, то сжатый ответ не может содержать некоторые > >> заголовки? > > > > При любых изменениях тела ответа, в том числе - модулем gzip, > > ETag'и из ответа убираются. Это сделано, т.к. стандарт требует, > > чтобы strong etags у ответов совпадали тогда и только тогда, когда > > ответы совпадают до байта. (А если ответы будет не совпадать при > > одинаковых ETag'ах - это в свою очередь чревато получением > > неверного суммарного ответа при комбинировании нескольких ответов > > на range-запросы.) Почитать подробности можно тут (и далее по > > ссылкам): > > > > http://tools.ietf.org/html/rfc2616#section-3.11 > > > > Ага, спасибо, более менее разобрался. Все таки, есть вариант оставлять ETag, > пришедший от бэкэнда, > может в сочетании с Last-Modified? В чём цель? > Кстати, до реализации SPDY все было точно так же (ETag не проксировался при > Gzip)? Поддержка entity tags не имеет отношения к spdy, и появилась в nginx 1.3.3. До этого nginx не знал про заголовок ETag и ничего с ним не делал. -- Maxim Dounin http://nginx.org/en/donation.html _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru