scgi_pass_request_body
Директива scgi_pass_request_body контролирует, отправляется ли тело запроса на SCGI-сервер при использовании проксирования SCGI. — NGINX HTTP Core
Описание
Директива `scgi_pass_request_body` является флагом, используемым в конфигурациях SCGI-сервера. Когда она включена, директива указывает, что всё тело запроса должно быть переслано на SCGI-сервер, указанный в директиве `scgi_pass`. Если директива установлена в 'off', тело запроса не будет переслано, что может быть полезно в случаях, когда тело запроса не нужно бэкенду SCGI, что позволяет экономить ресурсы и пропускную способность. Эту директиву можно использовать в контексте блоков http, server или location. Она принимает параметр, представляющий собой флаг, то есть её можно установить в `on` (чтобы пересылать тело запроса) или `off` (чтобы не пересылать). Поведение по умолчанию, когда директива не задана, — пересылать тело запроса в зависимости от контекста запроса и конфигурации других связанных директив. При использовании директивы следует тщательно учитывать требования SCGI-приложения. Некоторым SCGI-приложениям может понадобиться тело запроса для обработки, тогда как другим — нет. Неправильная настройка может привести к некорректной обработке запроса на стороне бэкенда SCGI, что вызовет проблемы с обработкой данных или генерацией ответа.
Пример конфига
location /scgi {
scgi_pass http://backend;
scgi_pass_request_body on;
}Установка `scgi_pass_request_body` в `off` может привести к непредвиденному поведению, если SCGI-приложение ожидает тело запроса.
Проверьте совместимость SCGI-приложений с обработкой тела запроса перед переключением этой директивы.