nginx采用1.5.6。
后端采用nodejs+formidable的方式接受上傳文件,本問題的對應與采用什么樣的后端沒太大關系,這里只是交代一下。
問題:
在前端頁面上將文件上傳,nginx沒有將每一塊收到的文件數據塊轉發給后端,而是全部緩存了下來,全部收取完成后再一塊一塊的轉發給后端,顯而易見的是上傳時間就被延長了許多。
涉及問題的模塊: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,即可解決。