场景:我将前端部署在nginx上,然后客户端上传文件发送请求到后端接口上传文件,然后后端是将这个文件接收到,然后 在后端发送HTTP请求,然后去请求第三方服务器进行文件上传,然后这个时候报504,通过日志发现后端上传文件没得问题就是响应太慢了,然后我又去查了一下Nginx默认超时时间,发现是60秒,但是我们对接第三方那个服务器上传大文件实在是太慢了(甲方必须要求用第三方服务器),所以我就去修改Nginx配置文件,增加超时时间,重新启动Nginx发现解决了。
HTTP 504 Gateway Timeout错误表示请求超时。
通常是因为代理服务器(通常是NGINX或类似的服务器)在等待上游服务器(后端服务器)的响应时超过了设置的时间限制。具体来说,当客户端向NGINX网关服务器发送请求后,网关会向服务器发送请求,如果服务器在规定的时间内没有响应,网关就会返回504 Gateway Time-out的错误给客户端。
部署架构 
以下是一些可能的解决方案:
1. 增加NGINX超时设置:
在您的NGINX配置中,可以调整以下两个指令的值,以便更长时间等待后端服务器的响应:
# 设置 NGINX 的代理连接超时为 600 秒
proxy_connect_timeout 600;# 设置 NGINX 的代理发送超时为 600 秒
proxy_send_timeout &

最低0.47元/天 解锁文章
6082





