nginx传输大文件时,504gateway 问题解决
在传输大文件时,需要增加其响应超时时间,因为后台服务还在进行数据处理,如果到了65s,nginx会把连接断开,抛出一个504超时异常显示在前台页面。这个时候我们需要改变其响应超时时间达到我们需要的效果。文件配置如下:nginx.confhttp {#连接存活超时时间,默认为65s,如果下面需要修改,这个时候一定要与之相同或更大keepalive_timeout 1m;...
·
在传输大文件时,需要增加其响应超时时间,因为后台服务还在进行数据处理,如果到了65s,nginx会把连接断开,抛出一个504超时异常显示在前台页面。这个时候我们需要改变其响应超时时间达到我们需要的效果。文件配置如下:
nginx.conf
http {
#连接存活超时时间,默认为65s,如果下面需要修改,这个时候一定要与之相同或更大
keepalive_timeout 10m;
#nginx跟后端服务器连接超时时间(代理连接超时)
proxy_connect_timeout 600s;
#后端服务器数据回传时间(代理发送超时)
proxy_send_timeout 600s;
#连接成功后,后端服务器响应时间(代理接收超时)
proxy_read_timeout 600s;
#指定nginx与后端fastcgi server连接超时时间
fastcgi_connect_timeout 600s;
#指定nginx向后端传送请求超时时间(指已完成两次握手后向fastcgi传送请求超时时间)
fastcgi_send_timeout 600s;
#指定nginx向后端传送响应超时时间(指已完成两次握手后向fastcgi传送响应超时时间)
fastcgi_read_timeout 600s;
include /etc/nginx/sites-enabled/*.conf;
}
尾话:问题虽然解决了,但实际开发是不建议这么做的,这样做消耗太多nginx的性能,因为一个连接超时时间越长,他所占连接的时间也越长,推荐使用任务管理的方式处理大文件跑数据的问题,以队列形式亦可。从其他方面解决,而不是选择nginx增加连接超时时间解决。
更多推荐
已为社区贡献1条内容
所有评论(0)