Ошибка nginx: upstream sent too big header while reading response header from upstream

При запуске Symfony 2 под nginx + php5-fpm словил 500 ошибку, а в логах следующее:


2015/08/24 18:50:02 [error] 17530#0: *40 upstream sent too big header while reading response header from upstream, client: 127.0.0.1, server: test.local, request: "GET /app_dev.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "test.local"

Решение: в nginx-конфиг для виртуального хоста необходимо добавить следующее в секцию server:


server {
...

fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;

...
}

Также эти параметры можно задать глобально, указав их в nginx.conf в секции http.

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

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

Описание директив взято из документации модуля ngx_http_fastcgi_module.

Stas Kuryan

Web developer. Перфекционист в написании кода.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *