Перейти к содержанию

unbrotli: Распаковывает ответы, закодированные с помощью Brotli, для клиентов, которые его не поддерживают

Установка для Debian/Ubuntu

Эти документы применимы к APT пакету nginx-module-unbrotli, предоставленному репозиторием GetPageSpeed Extras.

  1. Настройте APT репозиторий, как описано в настройке APT репозитория.
  2. Установите модуль:
sudo apt-get update
sudo apt-get install nginx-module-unbrotli
Показать дистрибутивы и архитектуры
| Дистрибутив | Версия             | Компонент   | Архитектуры   |
|-------------|--------------------|-------------|----------------|
| debian      | bookworm           | main        | amd64, arm64   |
| debian      | bookworm-mainline  | main        | amd64, arm64   |
| debian      | trixie             | main        | amd64, arm64   |
| debian      | trixie-mainline    | main        | amd64, arm64   |
| ubuntu      | focal              | main        | amd64, arm64   |
| ubuntu      | focal-mainline     | main        | amd64, arm64   |
| ubuntu      | jammy              | main        | amd64, arm64   |
| ubuntu      | jammy-mainline     | main        | amd64, arm64   |
| ubuntu      | noble              | main        | amd64, arm64   |
| ubuntu      | noble-mainline     | main        | amd64, arm64   |

Модуль ngx_unbrotli является модулем-фильтром, который распаковывает ответы, закодированные с помощью Brotli (Content-Encoding: br), для клиентов, которые не поддерживают Brotli. Хранение ответов в формате Brotli позволяет сэкономить место и затраты на ввод-вывод, и этот модуль обеспечивает получение соответствующего распакованного контента клиентами, которые не могут обрабатывать Brotli.

Пример конфигурации

location /storage/ {
    unbrotli on;
    unbrotli_buffers 32 4k;
    ...
}

Директивы конфигурации

unbrotli

  • синтаксис: unbrotli on | off;
  • значение по умолчанию: off
  • контекст: http, server, location

Включает или отключает распаковку ответов, сжатых с помощью Brotli (Content-Encoding: br) для клиентов, которые не поддерживают Brotli. Когда unbrotli включен, сервер проверяет возможности клиента (аналогично тому, как обрабатывается gzip) для определения необходимости распаковки.

unbrotli_force

  • синтаксис: unbrotli_force on | off;
  • значение по умолчанию: off
  • контекст: http, server, location

Принудительно распаковывает ответы, сжатые с помощью Brotli, даже если клиент указывает на поддержку Brotli. Когда unbrotli_force включен, все ответы, закодированные с помощью Brotli, распаковываются перед отправкой клиенту, независимо от заголовка Accept-Encoding клиента.

unbrotli_buffers

  • синтаксис: unbrotli_buffers number size;
  • значение по умолчанию: зависит от размера страницы системы, обычно: unbrotli_buffers 32 4k; или unbrotli_buffers 16 8k;
  • контекст: http, server, location

Устанавливает количество и размер буферов, используемых для распаковки ответов Brotli. Обычно размер равен одной странице памяти (4 КБ или 8 КБ в зависимости от платформы). Увеличение количества или размера этих буферов может улучшить производительность для больших ответов за счет увеличенного использования памяти.