Ошибка "Upstream sent too big header while reading response header from upstream" возникает в Nginx при использовании модуля FastCGI (PHP-FPM), когда веб-сервер распределяет нагрузку и выступает в качестве proxy.
Она говорит о том, что размер заголовка ответа одного из бэкендов больше, чем Nginx смог прочитать. В этом случае решение достаточно тривиальное - увеличить размер буферов fastcgi:
server {
listen 80;
location ~ .php$ {
fastcgi_buffer_size 32k;
fastcgi_buffers 4 32k;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_cache fcgi;
fastcgi_cache_valid 200 60m;
}
}
Директивы могут находиться в секциях HTTP, server и location.
Также стоит обратить внимание на размер буфера proxy_buffer_size, если Nginx используется как proxy-сервер:
http {
proxy_buffer_size 64k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 64k;
}
Директивы также могут находиться в секциях HTTP, server и location.