Отключаю nginx.conf сжатие gzip off, а файлы все-равно приходят сжатыми. Почему так? Использую vestacp на Debian. Рестарт nginx-а делал. и обратная проблема когда добавляю тип video/mp4 в конфиг и перезагружаю nginx, то файлы этого типа не сжимаются.
Ну, определяю, например по размеру загружаемой страницы. По дефолту наверное вестаср настраивает конфиг нджинкса так, чтобы сжатие работало. Если открою админ.панель браузера, то в запросах вижу заголовок Accept-Encoding: gzip, deflate почти для всех типов файлов, кроме видео. Добавляю в конфиг нджинкса video/mp4 и перезагружаю его. Снова захожу на страницу, открываю запрос на видео и вижу, что в Accept-Encoding: так и не появился gzip, deflate. Ну и размер видео не поменялся.
Прочти как работает gzip. Accept-Encoding это то что отправляет браузер серверу. Ты отправляешь заголовок говоришь что готов принять gzip сервер сжимает браузер принимает и распаковывает. mp4 и так уже максимально сжатый фармат. То что получаешь от сервера смотри в респонс.
В нгх ещё важно где этот гзип офф прописан. Ты его можешь в какой-то локации отключить, но процесс резолва передаст управление другому блоку, а там оно включено остаётся и продолжает сжимать ответы. Немного не очевидное поведение.
А вы используете статик? Если скрипты или стили, они часто редактируются. Это придется каждый раз вручную сжимать и заливать на сервер? Или можно как-то автиматизировать? --- Добавлено --- и сжатые стили складываются в ту же директорию, что и обычные, или у них своя директория?
настраиваешь какой-нибудь watch в каком-нибудь gulp и на каждое сохранение исходного файла тебе он собирается (при необходимости), минимизируется/обфусцируется, сжимается, доставляется в нужный каталог. Для локальной и/или тестовой машины вообще не критично лохматить жесткий диск такими операциями, а на продакшн деплой ведь не так часто случается.
Судя по всему, тема все еще актуальна. @nospiou, @igordata, @Ganzal, подскажите пожалуйста, у меня включено сжатие в nginx.conf, также я настройки сжатия продублировал в конфиге текущего сайта. Но сжатие не работает. Как я это определяю: на клиентской машине после загрузки страницы суммарный размер "...Mb transfered" не меняется при включении/отключении gzip. При этом restart nginx и сброс браузерного кеша делаю каждый раз. Аудит хрома ругается, что можно бы сжать файлы. Что это может быть еще? Debian 9.4 VestaCP nginx.conf и конфиг текущего сайта Код (Text): # Compression gzip on; gzip_vary on; gzip_static on; gzip_comp_level 9; gzip_min_length 20; gzip_buffers 8 64k; gzip_types text/plain text/css text/javascript text/js text/xml application/font-woff pplication/json application/javascript application/x-javascript application/xml application/xml+rss (и т.д....) gzip_proxied any; gzip_disable "MSIE [1-6]\."; В ответе: Код (Text): HTTP/1.1 200 OK Server: nginx Date: Sat, 09 Jun 2018 12:01:46 GMT Content-Type: text/css Last-Modified: Fri, 08 Jun 2018 19:44:07 GMT Transfer-Encoding: chunked Connection: keep-alive Keep-Alive: timeout=60 Vary: Accept-Encoding ETag: W/"5b1adc87-119c0" Expires: Thu, 31 Dec 2037 23:55:55 GMT Cache-Control: max-age=315360000 В запросе: Код (Text): Accept: text/css,*/*;q=0.1 Accept-Encoding: gzip, deflate ......
чувак тебе ж сказали смотреть заголовки ты должен научиться просто на авось и на глазок - это не работает в программировании
Так а я что скинул выше? Заголовки ведь с респонса Нет там в респонсе: Content-Encoding: gzip Ну и размер суммарный по загрузке страницы должен ведь тоже меняться? А он не меняется. --- Добавлено --- Проверил в инкогнито. Заголовки в респонсе те же. Размер загрузки не уменьшился
Ок, поищу в логах. А не могут файрволы какие-то блочить? Стоит в принципе только то, что поставила vesta
Всегда виной кривые руки. Фаервол для портов. Внутри системы права доступа. Смотри где что менял. mime типы заинклюдил?
Очевидно, файлы приходят несжатыми. Вот как раз я и пытаюсь узнать, возможно есть какие-то дополнительные настройки, которые нужно выполнить на серваке. Может есть какие-то команды, которые могут подсказать как локализовать программу и т.п. Но пока покопаюсь в логах.