Решено: upstream sent too big header while reading response header from upstream, client

Решено: upstream sent too big header while reading response header from upstream, client Ошибка upstream sent too big header while reading response header from upstream, client
Иногда сайт недоступен и вы наблюдаете ошибку 502

Данная ошибка часто связана с тем, что nginx передал данные для apache, а тот не смог с ними справиться.

Но бывает и другое: когда apache работает нормально, и вся проблема с nginx.

Это легко проверить, просто откройте ваш сайт отдельно через порт nginx и отдельно через порт apache. Если вы увидели, что сайт работает на порту 81 (или 8080 - смотря как настроено у вас), то заходим в логи nginx и смотрим в чем дело: И так видим: Исправляется добавлением двух строк в конфиг Nginx, а именно в раздел http: Ну и рестарт nginx:
Что же такое proxy_buffer_size и proxy_buffers?????????:
proxy_buffer_size - задаёт размер буфера, в который будет читаться первая часть ответа, получаемого от проксируемого сервера. В этой части ответа находится, как правило, небольшой заголовок ответа. По умолчанию размер одного буфера равен размеру страницы памяти. В зависимости от платформы это или 4K, или 8K, однако его можно сделать меньше.

proxy_buffers - задаёт число и размер буферов для одного соединения, в которые будет читаться ответ, получаемый от проксируемого сервера. По умолчанию размер одного буфера равен размеру страницы. В зависимости от платформы это или 4K, или 8K.

А если нормальными словами, то proxy_buffer_size предназначен для хранения, прочтенного с бэкэнда хидера: То есть, если Вы уже выставили 32к, а ошибка все равно появляется, то нужно тюнить дальше.

Если же просто увеличить 32к до 64к, то можно получить вот такую ошибку: Итого, если указанных в самом верху настроек мало, корректируем так:
More