add_before_body

Директива `add_before_body` позволяет вставлять дополнительное содержимое перед телом HTTP-ответа в NGINX. — NGINX HTTP Core

add_before_body
httpserverlocation
Синтаксисadd_before_body content;
По умолчаниюnone
Контекстhttp, server, location
МодульNGINX HTTP Core
Аргументы1

Описание

Директива `add_before_body` используется в модуле NGINX HTTP core для добавления определённого содержимого перед тем, как тело ответа будет отправлено клиенту. Это особенно полезно для внедрения скриптов, заметок или другой разметки непосредственно в полезную нагрузку ответа без изменения приложения или бэкенд‑сервера. Вставляемое содержимое может задаваться как строковый литерал, который выводится в составе HTTP-ответа во время фазы обработки запроса. Директиву можно задавать в таких контекстах, как `http`, `server` и `location`, что позволяет тонко контролировать места вставки содержимого. Аргумент этой директивы — единое строковое значение, обозначающее добавляемое содержимое. После настройки `add_before_body` обрабатывает запрос на этапе вывода, гарантируя, что указанное содержимое предшествует исходному телу ответа. Поскольку это изменяет структуру ответа, важно убедиться, что вставляемое содержимое не нарушает тип или структуру содержимого ответа. Следует тщательно продумать добавляемое содержимое, чтобы сохранить корректное форматирование HTTP-ответа.

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

http {
    server {
        location /example {
            add_before_body '';
        }
    }
}

Убедитесь, что вставляемое содержимое корректно и не нарушает структуру основного тела ответа.

Использование большого объёма содержимого может повлиять на размеры ответов и производительность.

Избегайте добавления содержимого, которое непреднамеренно изменяет типы контента.