19

当我尝试访问不存在的路由或在 Twig 模板中出错时,我没有得到带有调试信息的 Symfony 错误页面,而是被重定向到默认的 nginx 502 Bad Gateway。

日志显示了一个有趣的行:

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"

有任何想法吗?

4

2 回答 2

35

在 nginx 配置中增加缓冲区大小,然后按照此处的建议重新启动 nginx 。

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

进一步增加配置的 php 部分中的 fastcgi 缓冲区( location ~ .php$ )

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

参考 CodeIgniter 用户在此处提出的问题的答案。

于 2013-07-17T19:15:05.697 回答
17

您也可以尝试在 app/config/config_dev.yml 禁用 ChromePHP

只需注释掉这些行:

chromephp:
    type:   chromephp
    level:  info

这个插件会生成一个大标题并强制 nginx 以 502 Bad Gateway 响应。

更多信息在:

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

在 Symfony 2.3 中启用调试组件

于 2013-08-15T10:25:34.897 回答