NGINX在从上游读取响应头时给502上游发送了太大的头,如何找出问题的根源是什么?

时间:2017-09-21 06:22:29

标签: ruby-on-rails nginx

如标题中所述,NGINX在错误日志中向我发送了一个上游发送的大头错误。

2017/09/20 13:30:10 [error] 23665#23665: *100918355 upstream sent too big header while reading response header from upstream, client: xxx.xxx.xxx.xxx, server: staging.xxx.xxx.com, request: "POST /media_plans HTTP/1.1", upstream: "http://xxx.xxx.xxx.xxx:xxxx/media_plans", host: "xxx.xxx.com", referrer: "https://xxx.xxx.com/advertisers/4/dealers"

我发现了一些其他的帖子和博客,告诉我要像这样增加缓冲区大小,

fastcgi_buffers 16 16k; 
fastcgi_buffer_size 32k;

现在我不介意更改nginx的配置似乎它没有解决问题,我实际上想知道是什么导致它而不仅仅是增加缓冲区大小。

如果我理解正确,下面的命令会显示标题的平均大小及其最大大小。

awk '($9 ~ /200/) { i++;sum+=$10;max=$10>max?$10:max; } END { printf("Maximum: %d\nAverage: %d\n",max,i?sum/i:0); }' access.log
Maximum: 1236947
Average: 1529

最多1.23 mb让我开始怀疑其他可能是错的。我宁愿修复问题的根源而不是增加缓冲区大小。

如何找出标题在rails中的大小?

0 个答案:

没有答案