За последние 24 часа нас посетили 18954 программиста и 1638 роботов. Сейчас ищут 1425 программистов ...

Accept-Encoding: gzip, deflate даже есть gzip off. Почему так?

Тема в разделе "Настройка веб-сервера", создана пользователем Сереганек, 4 июн 2018.

  1. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Отключаю nginx.conf сжатие gzip off, а файлы все-равно приходят сжатыми. Почему так? Использую vestacp на Debian. Рестарт nginx-а делал.

    и обратная проблема когда добавляю тип video/mp4 в конфиг и перезагружаю nginx, то файлы этого типа не сжимаются.
     
    #1 Сереганек, 4 июн 2018
    Последнее редактирование: 4 июн 2018
  2. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    А что в твоем понимании сжатые файлы? Как смотришь как проверяешь? Видео как сжиться должно?
     
    Сереганек нравится это.
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    как определяешь?
    gzip_staitc ещё есть
     
    Сереганек нравится это.
  4. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Ну, определяю, например по размеру загружаемой страницы. По дефолту наверное вестаср настраивает конфиг нджинкса так, чтобы сжатие работало. Если открою админ.панель браузера, то в запросах вижу заголовок Accept-Encoding: gzip, deflate почти для всех типов файлов, кроме видео. Добавляю в конфиг нджинкса video/mp4 и перезагружаю его. Снова захожу на страницу, открываю запрос на видео и вижу, что в Accept-Encoding: так и не появился gzip, deflate. Ну и размер видео не поменялся.
     
  5. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Прочти как работает gzip. Accept-Encoding это то что отправляет браузер серверу. Ты отправляешь заголовок говоришь что готов принять gzip сервер сжимает браузер принимает и распаковывает. mp4 и так уже максимально сжатый фармат. То что получаешь от сервера смотри в респонс.
     
    Сереганек нравится это.
  6. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    В нгх ещё важно где этот гзип офф прописан. Ты его можешь в какой-то локации отключить, но процесс резолва передаст управление другому блоку, а там оно включено остаётся и продолжает сжимать ответы. Немного не очевидное поведение.
     
    Сереганек нравится это.
  7. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    А вы используете статик? Если скрипты или стили, они часто редактируются. Это придется каждый раз вручную сжимать и заливать на сервер? Или можно как-то автиматизировать?
    --- Добавлено ---
    и сжатые стили складываются в ту же директорию, что и обычные, или у них своя директория?
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    всё можно автоматизировать
    так прям часто?
    туда же с тем же именем + .gz
     
    Сереганек нравится это.
  9. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    настраиваешь какой-нибудь watch в каком-нибудь gulp и на каждое сохранение исходного файла тебе он собирается (при необходимости), минимизируется/обфусцируется, сжимается, доставляется в нужный каталог. Для локальной и/или тестовой машины вообще не критично лохматить жесткий диск такими операциями, а на продакшн деплой ведь не так часто случается.
     
    Сереганек нравится это.
  10. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Судя по всему, тема все еще актуальна. @nospiou, @igordata, @Ganzal, подскажите пожалуйста, у меня включено сжатие в nginx.conf, также я настройки сжатия продублировал в конфиге текущего сайта. Но сжатие не работает. Как я это определяю: на клиентской машине после загрузки страницы суммарный размер "...Mb transfered" не меняется при включении/отключении gzip. При этом restart nginx и сброс браузерного кеша делаю каждый раз. Аудит хрома ругается, что можно бы сжать файлы. Что это может быть еще?

    Debian 9.4
    VestaCP

    nginx.conf и конфиг текущего сайта
    Код (Text):
    1.  
    2.     # Compression
    3.     gzip                on;
    4.     gzip_vary           on;
    5.     gzip_static         on;
    6.     gzip_comp_level     9;
    7.     gzip_min_length     20;
    8.     gzip_buffers        8 64k;
    9.     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 (и т.д....)
    10.     gzip_proxied        any;
    11.     gzip_disable        "MSIE [1-6]\.";
    В ответе:
    Код (Text):
    1. HTTP/1.1 200 OK
    2. Server: nginx
    3. Date: Sat, 09 Jun 2018 12:01:46 GMT
    4. Content-Type: text/css
    5. Last-Modified: Fri, 08 Jun 2018 19:44:07 GMT
    6. Transfer-Encoding: chunked
    7. Connection: keep-alive
    8. Keep-Alive: timeout=60
    9. Vary: Accept-Encoding
    10. ETag: W/"5b1adc87-119c0"
    11. Expires: Thu, 31 Dec 2037 23:55:55 GMT
    12. Cache-Control: max-age=315360000
    В запросе:
    Код (Text):
    1. Accept: text/css,*/*;q=0.1
    2. Accept-Encoding: gzip, deflate
    3. ......
     
  11. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Может с кэша тащишь. file - new incognito window
     
    Сереганек нравится это.
  12. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    чувак
    тебе ж сказали смотреть заголовки
    ты должен научиться
    просто на авось и на глазок - это не работает в программировании
     
    Сереганек нравится это.
  13. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Так а я что скинул выше? Заголовки ведь с респонса
    Нет там в респонсе: Content-Encoding: gzip
    Ну и размер суммарный по загрузке страницы должен ведь тоже меняться? А он не меняется.
    --- Добавлено ---
    Проверил в инкогнито. Заголовки в респонсе те же. Размер загрузки не уменьшился
     
  14. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Ну значит все сломал. Начинай сначала) Или логи смотри может там что то интересное
     
    Сереганек нравится это.
  15. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Ок, поищу в логах. А не могут файрволы какие-то блочить? Стоит в принципе только то, что поставила vesta
     
  16. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Всегда виной кривые руки. Фаервол для портов. Внутри системы права доступа. Смотри где что менял. mime типы заинклюдил?
     
  17. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    ну там же в конфиге есть gzip_types (если речь об этом)
     
  18. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    И как nginx должен определит в какого расширения файла какой тип?
     
  19. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    А, теперь понял вопрос. Да инклюд есть, файл проверил - в нем перечислены все типы. Это ОК.
     
  20. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    вывод какой?
     
  21. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Очевидно, файлы приходят несжатыми. Вот как раз я и пытаюсь узнать, возможно есть какие-то дополнительные настройки, которые нужно выполнить на серваке. Может есть какие-то команды, которые могут подсказать как локализовать программу и т.п. Но пока покопаюсь в логах.
     
  22. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а сервак какой?
    --- Добавлено ---
    это тут при чём?
     
  23. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    VPS
    --- Добавлено ---
    сори, очепятался.. "локализовать проблему" а не програму ))
     
  24. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    nginx или apache?
     
  25. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27