ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Gzip и заголовок Via:



On Wed, 19 Jan 2005, Mike Kolesnikov wrote:

Дома пользуюсь небольшой HTTP проксёй/кэшем: polipo.
Заметил, что nginx не отдает ему сжатый контент, тогда как при обращении
к нему напрямую мозиллой приходит нормальный content-encoding: gzip.

Произвел несколько экспериментов. Дело оказалось в заголовке Via.
Вот тут nginx отдавал gzip, как и положено:

GET /robots.txt HTTP/1.1
Host: 12.34.56.7
Accept-Encoding: gzip

Как только добавляется заголовок Via:, gzip сразу как не бывало, и
отдается plain text:

GET /robots.txt HTTP/1.1
Host: 12.34.56.7
Accept-Encoding: gzip
Via: 1.1 test.com

Это баг, или такая фича?

Фича. Сжатием ответов на проксированные запросы можно управлять директивами:

gzip_http_version  [ 1.0 | 1.1 ];
gzip_proxied       [ any | off |
                     expired no-cache no-store private auth
                     no_last_modified no_etag ];

Они примерно соответствуют директивам mod_deflate:
http://sysoev.ru/mod_deflate/readme.html#DeflateHTTP
http://sysoev.ru/mod_deflate/readme.html#DeflateProxied

gzip_proxied гибче. Например, "DeflateProxied nocachable" соотвествует
"gzip_proxied  expired no-cache", "DeflateProxied poor_cachable" -
"gzip_proxied  expired no-cache no-store private no_last_modified no_etag"

"gzip_proxied  auth" относится к некэшируемым.


Игорь Сысоев
http://sysoev.ru


 




Copyright © Lexa Software, 1996-2009.