Перейти к основному содержимому

Алгоритмы сжатия файлов

Последнее изменение:
к сведению

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

Алгоритмы сжатия подходят для текстовых форматов, например: HTML, CSS, JS, JSON, XML, SVG и других. Алгоритмы работают по одинаковому принципу: находят в файле повторяющиеся фрагменты и заменяют их ссылками на первый встреченный фрагмент — это уменьшает размер файла.

Алгоритмы сжатия не подходят для обработки уже сжатых файлов, например растровых изображений, аудио- и видеофайлов и архивов. Чтобы управлять качеством и форматом изображений (например, конвертировать в WebP), вы можете подключить услугу Оптимизация изображений.

CDN поддерживает два алгоритма сжатия:

  • Gzip — распространенный алгоритм: работает со всеми протоколами HTTP, поддерживает HTTPS, совместим со всеми браузерами. Gzip работает по умолчанию;
  • Brotli — на 20% эффективнее Gzip, но работает только по HTTPS, с современными браузерами и некоторыми типами файлов. Brotli можно включить дополнительно.

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

Алгоритм сжатия Gzip

Gzip работает без ограничений:

  • поддерживает HTTP и HTTPS;
  • совместим со всеми браузерами;
  • применяется ко всем типам файлов.

По умолчанию Gzip включен, мы не рекомендуем его отключать. Если вы отключили Gzip, его можно включить в любой момент.

Включить алгоритм сжатия Gzip

  1. В панели управления в верхнем меню нажмите Продукты и выберите CDN.

  2. В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.

  3. Убедитесь, что в блоке Тип оптимизации раздачи выбрано Статика.

  4. В блоке Сжатие отметьте чекбокс Сжатие Gzip.

  5. Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе PROCESSING. В это время применение других настроек недоступно. Настройки применятся, когда ресурс перейдет в статус ACTIVE.

Отключить алгоритм сжатия Gzip

Мы не рекомендуем отключать Gzip, если вы не используете альтернативный метод сжатия на источнике. Без сжатия файлы будут передаваться в исходном размере. Это увеличит время загрузки для пользователей и объем потребляемого трафика CDN.

  1. В панели управления в верхнем меню нажмите Продукты и выберите CDN.

  2. В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.

  3. В блоке Сжатие снимите чекбокс Сжатие Gzip.

  4. Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе PROCESSING. В это время применение других настроек недоступно. Настройки применятся, когда ресурс перейдет в статус ACTIVE.

Алгоритм сжатия Brotli

Brotli — это алгоритм сжатия, который позволяет достичь большей степени сжатия по сравнению с Gzip — в среднем на 20%.

У Brotli есть ограничения:

  • работает только по протоколу HTTPS;
  • совместим только с современными браузерами;
  • обрабатывает только некоторые типы файлов.

Список типов файлов, которые обрабатывает Brotli:

  • application/javascript;
  • application/json;
  • application/vnd.apple.mpegurl;
  • application/vnd.ms-fontobject;
  • application/x-font-opentype;
  • application/x-font-truetype;
  • application/x-font-ttf;
  • application/x-javascript;
  • application/xml;
  • application/xml+rss;
  • font/eot;
  • font/opentype;
  • font/otf;
  • image/svg+xml;
  • image/vnd.microsoft.icon;
  • image/x-icon;
  • text/compressible;
  • text/css;
  • text/javascript;
  • text/xml.

Включить алгоритм сжатия Brotli

  1. В панели управления в верхнем меню нажмите Продукты и выберите CDN.

  2. В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.

  3. Убедитесь, что в блоке Тип оптимизации раздачи выбрано Статика.

  4. В блоке Сжатие отметьте чекбокс Сжатие Brotli.

  5. Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе PROCESSING. В это время применение других настроек недоступно. Настройки применятся, когда ресурс перейдет в статус ACTIVE.

Отключить алгоритм сжатия Brotli

  1. В панели управления в верхнем меню нажмите Продукты и выберите CDN.

  2. В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.

  3. В блоке Сжатие снимите чекбокс Сжатие Brotli.

  4. Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе PROCESSING. В это время применение других настроек недоступно. Настройки применятся, когда ресурс перейдет в статус ACTIVE.

Проверить работу алгоритма сжатия

  1. Перейдите на свой сайт, который раздается через CDN.

  2. Откройте инструменты разработчика → вкладка Network.

  3. В блоке Name нажмите на строку с CSS- или JS-файлом.

  4. На вкладке Headers в блоке Response headers найдите заголовок Content-Encoding:

    • если значение заголовка — gzip, применяется алгоритм сжатия Gzip;
    • если значение заголовка — br, применяется алгоритм сжатия Brotli;
    • если заголовка нет — сжатие не применяется. Это может происходить из-за того, что алгоритмы сжатия отключены в настройках CDN-ресурса или включен только алгоритм сжатия Brotli, который не поддерживается браузером пользователя.
  5. Если заголовка Content-Encoding нет, проверьте в настройках CDN-ресурса, что включен алгоритм сжатия Gzip и при необходимости — Brotli.