Greendq
@Greendq

Nginx, Partial content и gzip?

Приветствую!


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

если использовать


curl --header «Range: bytes=0-5000000» 192.168.2.191/patcher/windows/1.0.0/program.exe>part1

curl --header «Range: bytes=5000001-9152512» 192.168.2.191/patcher/windows/1.0.0/program.exe>part2


то получаем 2 куска требуемого файла в несжатом виде, куски разной длины, но несжаты.


Если же к каждому запросу добавить


--header «Accept-Encoding: gzip,deflate»


то получаются 2 одинаковых куска, представляющих собой полностью сжатый файл.


В логах сервер честно говорит, что partial content не используется:


в первом случае:


192.168.2.191 — - [01/Apr/2013:12:07:40 +0300] «GET /patcher/windows/1.0.0/program.exe HTTP/1.1» 206 5000001 "-" «curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6»

192.168.2.191 — - [01/Apr/2013:12:07:52 +0300] «GET /patcher/windows/1.0.0/program.exe HTTP/1.1» 206 4152511 "-" «curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6»


И во втором:


192.168.2.191 — - [01/Apr/2013:12:14:37 +0300] «GET /patcher/windows/1.0.0/program.exe HTTP/1.1» 200 4167250 "-" «curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6»

192.168.2.191 — - [01/Apr/2013:12:14:52 +0300] «GET /patcher/windows/1.0.0/program.exe HTTP/1.1» 200 4167250 "-" «curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6»


Сжимать данные в случае указания диапоазонов нельзя вообще, или это я что-то пропустил в доке?


Заранее спасибо.
  • Вопрос задан
  • 3352 просмотра
Решения вопроса 1
@1x1
Одновременно не работает, да. Был модуль для похожих целей, но там диапазон передаётся через параметры, а не в заголовках.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Greendq
@Greendq Автор вопроса
Спасибо за ответ. Судя по ветке на форуме Nginx-а, таки-да, мутно там всё в стандарте.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы