Nginx overwrites general symfony errors with 502 B

2019-02-04 23:02发布

问题:

When I try to access a non-existing route or make a mistake inside a Twig template, instead of getting the Symfony error page with debug information, I get redirected to a default nginx 502 Bad Gateway.

The log shows an interesting line:

013/07/17 16:11:41 [error] 16952#0: *187 upstream sent too big header while reading
response header from upstream, client: 127.0.0.1, server: ftwo.localhost, request: "GET    
/heasd HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "ftwo.localhost"

Any ideas?

回答1:

Increase your buffer size in nginx configuration and restart nginx afterwards as suggested here.

proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;

Further increase the fastcgi buffer in the php section of your configuration ( location ~ .php$ )

fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;

Referenced answer to a question from a CodeIgniter user here.



回答2:

You may also try to disable ChromePHP at app/config/config_dev.yml

Just comment out these lines:

chromephp:
    type:   chromephp
    level:  info

This plugin generates a large header and forces nginx to response with 502 Bad Gateway.

More info at:

https://github.com/symfony/symfony/issues/8413

Enable Debug Component in Symfony 2.3



标签: symfony nginx