增加504超时错误


Answers:


120

根据您使用的网关的类型,您应该使用类似以下的命令:

proxy_read_timeout 600s;

检查文档:http : //nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_read_timeout


9
我发现scalescale.com/tips/nginx/504-gateway-time-out-using-nginx提到了一些其他超时设置。在这方面也可能会有帮助。
雅各布·朗格

1
好吧,我试图先回答这个问题。提到的其他选项与nginx无关,也不与解决错误504有关(可能是* _connect_timeout除外...但是那是关于网络连接问题)。
kworr

是的,我知道这一点,并且我也发现您的回答对我很有帮助。只是以为其他信息也可能对其他人有帮助。)
Jakob Runge

1
您需要花点时间吗?proxy_read_timeout 60s;
David Lin

1
@DavidLin,您是对的,尽管默认为秒,但应根据nginx.org/en/docs/syntax.html
kworr

0

如果是fastcgi超时错误,则需要增加fastcgi_read_timeout

# /etc/nginx/conf.d/example.com.conf
server {

    location ~ \.(php)$ {
        fastcgi_pass unix:/var/run/php74-example.com.sock;
        fastcgi_read_timeout 300s;

错误日志)上游超时

# tail -f example.com.error.log
2020/12/29 14:51:42 [error] 30922#30922: 
*9494 upstream timed out (110: Connection timed out) while reading response header from upstream,
...
upstream: "fastcgi://unix:/var/run/php74-example.com.sock",
...

nginx手册)

Default: fastcgi_read_timeout 60s;
Context: http, server, location

http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_read_timeout


调用在Chrome DevTools中运行超过60秒的脚本的结果。

默认60秒

在此处输入图片说明

fastcgi_read_timeout 300秒

在此处输入图片说明

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.