你的位置:首页 > Java教程

[Java教程]上传文件被nginx全部缓存的问题


nginx采用1.5.6。

后端采用nodejs+formidable的方式接受上传文件,本问题的对应与采用什么样的后端没太大关系,这里只是交代一下。

 

问题:

在前端页面上将文件上传,nginx没有将每一块收到的文件数据块转发给后端,而是全部缓存了下来,全部收取完成后再一块一块的转发给后端,显而易见的是上传时间就变成了double。

涉及问题的模块:ngx_http_core_module

 

对应方法:

将nginx的版本升级到1.7.11以上。

添加指令:proxy_request_buffering off

指令说明如下图:

参考:

http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_request_buffering

 

重启nginx,即可解决。