gzip не работает для некоторых файлов, использующих nginx

Некоторые файлы не распаковываются по пути к пользовательскому браузеру в нашей настройке.

например

http://myhostname.com/css/build/20120904-1.css

http://myhostname.com/js/dojo/dn/main.js?20120904-1

http://myhostname.com/js/jquery-min/compiled.js?20120725-4

не может быть застегнут на молнию.

моя текущая конфигурация:

        location ~* \.(js|css|png|jpg|jpeg|gif|ico)\.*+$ {
            if ($args ~ [0-9]\.*+) {
               expires max;
               break;
            }
            expires max;
            log_not_found off;
             gzip  on;
    }

Что нужно отрегулировать, чтобы заставить gzip летать? Я уже попробовал несколько других вариантов, но не хочу продолжать с try & error.

Большое спасибо.

Еще немного информации: возможно, есть другая проблема. Инструменты Firebug и pingdom показывают мне сжатый размер, тогда как Chrome Developer Bar и Google PageSpeed ​​Insights говорят, что "сжатие не активно"

Чтобы упростить задачу, ссылка на сайт http://diginights.com/

3 ответа

Вам нужно установить gzip_types application / x-javascript text / css; По умолчанию nginx будет только gzip text/html.

location ~* \.(js|css|png|jpg|jpeg|gif|ico)\.*+$ {

Это регулярное выражение не совпадает с вашими примерами запросов.

Правый:

location ~* \.(?:js|css|png|jpe?g|gif|ico)$ {

Это потому, что ваша конфигурация, кажется, говорит, что это не нужно делать для любого файла с цифрой 0-9 в имени.

Удалить весь этот раздел; в любом случае это в основном избыточно и почти наверняка не делает ничего, что вы могли бы хотеть.

        if ($args ~ [0-9]\.*+) {
           expires max;
           break;
        }
Другие вопросы по тегам