大文件上传时nginx 502 Bad Gateway

时间:2015-04-19 18:30:06

标签: linux nginx proxy

我有一个带有apache web服务器和nginx作为代理的服务器。如果我想上传150MB的文件,它可以毫无困难地运行。但如果我尝试上传一个350MB的文件(或更大的文件,我必须上传最多2GB的文件),我得到nginx 502 Bad Gateway错误。

我正在使用plesk,我将这些指令添加到nginx配置中进行测试:

proxy_buffer_size   256k;
proxy_buffers   8 512k;
proxy_busy_buffers_size   512k;
fastcgi_buffers 8 512k;
fastcgi_buffer_size 512k;

我也增加了client_max_body_size指令。

我总是得到这个错误:

2015/04/19 11:36:09 [error] 31924#0: *43126352 upstream prematurely closed connection while reading response header from upstream, client: x.x.x.x, server: example.com, request: "POST /uptest HTTP/1.1", upstream: "http://x.x.x.x:7080/uptest", host: "example.com", referrer: "http://example.com/uptest"

我应该改变什么?

1 个答案:

答案 0 :(得分:1)

FcgidMaxRequestLen或FcgidMaxRequestInMem指令不够大,导致在许多情况下(http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html)触发限制。由于Apache中的错误(bug https://issues.apache.org/bugzilla/show_bug.cgi?id=51747

,需要配置FcgidMaxRequestInMem

编辑fcgid.conffile,这取决于你的linux版本可以位于/etc/httpd/conf.d/或/ etc / apache2 / mods-available /

使用相同的值设置FcgidMaxRequestLen和FcgidMaxRequestInMem,然后重新启动Apache。