Ошибка “upstream sent too big header while reading response header from upstream” возникает в Nginx при использовании модуля FastSGI (PHP-FPM), когда веб-сервер распределяет нагрузку и выступает в качестве proxy.
Она говорит о том, что размер заголовка ответа одного из бэкендов больше, чем Nginx смог прочитать. В этом случае решение достаточно тривиальное — увеличить размер буферов fastcgi:
Код:
server {
listen 80;
listen [::]:80;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_buffer_size 32k;
fastcgi_buffers 4 32k;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
}
}
# Директивы могут находиться в секциях 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