November 28, 2012 04:23AM
Добрые сутки!

Образил уже весь рунет, но либо такая проблема есть только у меня, либо всем на нее пофиг. Допустим, у нас есть proxy_cache или fastcgi_cache. Заставим его закешировать тестовую страницу, для чего зайдем на нее из браузера, поддерживающего сжатие gzip. В кеше на диске видно, что страница сжата и присутствуют соответствующие этому заголовки.

А теперь зайдем на ту же страницу браузером без поддержки gzip (хоть тот же wget). Страница отдается из кеша, кодированной (!!!), вместо текста - кракозябры.

Временно я решил эту проблему вот так:

if ($http_user_agent ~ "MSIE [4-6]\.|Safari|Konqueror") {
# В этих браузерах имеются баги при обработке gzip-сжатых файлов с длинными URL-ами.
set $no_gzip 1;
}

if ($http_accept_encoding !~ "gzip") {
set $no_gzip 1;
}

proxy_cache my_cache;

proxy_cache_key "$no_gzip|$request_method|$http_if_modified_since|$http_if_none_match|$host|$request_uri";

Но сами понимаете, обидно кешировать 2 одинаковые страницы. Что делать и как быть? gzip_disable не помогает.
Subject Author Posted

Настройка proxy_cache + gzip

SenatoR November 28, 2012 04:23AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 235
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready