大家好,小评来为大家解答以上问题。504网关超时怎么办,504网关超时怎么解决很多人还不知道,现在让我们一起来看看吧!
1、在这种情况下,fastcgi进程被挂起。如果fastcgi服务团队没有很好地处理这种暂停,它可能会提示“504网关超时”错误。
2、默认的fastcgi进程响应缓冲区是8K,因此我们可以将其设置得更大。在nginx.conf中,添加:fastcgi_buffers 8 128k。
3、这意味着将fastcgi缓冲区设置为8块128k的空间。
4、以上方法修改后,如果还是有问题,可以继续修改nginx的超时参数,把参数调整大一点,比如设置为60秒:
5、 send_timeout 60;
6、经过这两个参数的调整,结果显示没有“504网关超时”错误,说明效果相当不错,问题基本解决。
7、这里我们需要修改php-fpm和nginx的配置。因为在这种情况下,还会有“504网关超时”的错误提示。
8、将max_children从之前的10改为30,这样可以保证足够的php-cgi进程可以使用。
9、将request_terminate_timeout由之前的0秒改为60秒,这样php-cgi进程处理脚本的超时可以增加到60秒,这样可以防止进程被挂起,提高利用效率。
10、为了减少fastcgi请求的数量并尽量保持缓冲区不变,我们需要更改nginx的几个配置项,如下所示:
11、将fastcgi_buffers由4 64k改为2 256k
12、将fastcgi_buffer_size由64k改为128k
13、将fastcgi_busy_buffers_size由128k改为256k
14、Change the fastcgi _ temporary _ file _ write _ size from 128k to 256k.
15、案例二,方案修改后,我们需要在测试前重新加载php-fpm和nginx的配置。之后没有发现“504网关超时”错误,效果还是不错的!
本文到此结束,希望对大家有所帮助。