Заголовок ответа приложения не помещается в буфер nginx
«upstream sent too big header while reading response header from upstream» в журнале nginx и «Ошибка загрузки (BadGateway)» у клиента: ответ приложения за nginx пришёл с заголовком больше буфера. Для сервиса NOMAD вендор Directum RX даёт готовые значения буферов.
Что это значит
nginx как обратный прокси читает заголовок ответа приложения в буфер proxy_buffer_size. Если заголовок больше, nginx прерывает запрос, пишет эту ошибку и отдаёт клиенту 502 Bad Gateway. Большие заголовки обычно из-за длинных cookie или токенов.
В Directum RX это описано для сервиса NOMAD за nginx: в мобильном приложении Solo при открытии документов появляется Ошибка загрузки (BadGateway), а в журнале NOMAD может быть сообщение Процесс не может получить доступ к файлу, так как этот файл используется другим процессом.
Как проверить
- Журнал ошибок nginx: есть ли эта строка и для какого адреса.
- Текущие значения буферов в конфигурации:
nginx -T | grep -E "proxy_buffer".
Что сделать
В блоке http или в location нужного приложения увеличить буферы. Для NOMAD справка вендора приводит такие значения:
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
Затем проверить конфигурацию и перечитать её: nginx -t && nginx -s reload.
Ошибка повторяется?
Запустите Диагностика: за полминуты он покажет состояние базы, брокера, поиска и сервера. С отчётом разберём причину за 30 минут бесплатного созвона.
Написать