1.遇到的问题
an upstream response is buffered to a temporary file /var/cache/nginx/proxy_temp/0/52/0002923520 while reading upstream
从这条error日志来看是nginx某一块的buffer设置的太小,而response(包含response header和response body)导致response结果不得不临时写到文件中。
2.解决办法
可以location下修改的配置参数
client_header_buffer_size 128k; client_body_buffer_size 1m; proxy_buffer_size 32k; proxy_buffers 64 32k; proxy_busy_buffers_size 1m; proxy_temp_file_write_size 512k;
经过对nginx.conf配置调整之后,执行nginx -s relaod命令,不需要重启nginx,问题就解决了。
cd /usr/local/nginx/sbin
./nginx -s relaod
3.nginx扩展
官方文档链接如下
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#directives