Алгоритмы сжатия файлов
Сжатие файлов доступно, если выбран тип оптимизации раздачи контента — Статика.
Алгоритмы сжатия подходят для текстовых форматов, например: 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
-
В панели управления в верхнем меню нажмите Продукты и выберите CDN.
-
В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.
-
Убедитесь, что в блоке Тип оптимизации раздачи выбрано Статика.
-
В блоке Сжатие отметьте чекбокс Сжатие Gzip.
-
Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе
PROCESSING. В это время применение других настроек недоступно. Настройки применятся, когда ресурс перейдет в статусACTIVE.
Отключить алгоритм сжатия Gzip
Мы не рекомендуем отключать Gzip, если вы не используете альтернативный метод сжатия на источнике. Без сжатия файлы будут передаваться в исходном размере. Это увеличит время загрузки для пользователей и объем потребляемого трафика CDN.
-
В панели управления в верхнем меню нажмите Продукты и выберите CDN.
-
В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.
-
В блоке Сжатие снимите чекбокс Сжатие Gzip.
-
Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе
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
-
В панели управления в верхнем меню нажмите Продукты и выберите CDN.
-
В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.
-
Убедитесь, что в блоке Тип оптимизации раздачи выбрано Статика.
-
В блоке Сжатие отметьте чекбокс Сжатие Brotli.
-
Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе
PROCESSING. В это время применение других настроек недоступно. Настройки применятся, когда ресурс перейдет в статусACTIVE.
Отключить алгоритм сжатия Brotli
-
В панели управления в верхнем меню нажмите Продукты и выберите CDN.
-
В разделе CDN-ресурсы откройте страницу ресурса → вкладка Оптимизация.
-
В блоке Сжатие снимите чекбокс Сжатие Brotli.
-
Нажмите Применить. Во время применения настроек ресурс будет находиться в статусе
PROCESSING. В это время применение других настроек недоступно. Настройки применятся, когда ресурс перейдет в статусACTIVE.
Проверить работу алгоритма сжатия
-
Перейдите на свой сайт, который раздается через CDN.
-
Откройте инструменты разработчика → вкладка Network.
-
В блоке Name нажмите на строку с CSS- или JS-файлом.
-
На вкладке Headers в блоке Response headers найдите заголовок Content-Encoding:
- если значение заголовка —
gzip, применяется алгоритм сжатия Gzip; - если значение заголовка —
br, применяется алгоритм сжатия Brotli; - если заголовка нет — сжатие не применяется. Это может происходить из-за того, что алгоритмы сжатия отключены в настройках CDN-ресурса или включен только алгоритм сжатия Brotli, который не поддерживается браузером пользователя.
- если значение заголовка —
-
Если заголовка Content-Encoding нет, проверьте в настройках CDN-ресурса, что включен алгоритм сжатия Gzip и при необходимости — Brotli.