阿里云
阿里云多端小程序中小企业获客首选
发表主题 回复主题
  • 1671阅读
  • 3回复

[分享]nginx 出现504 Gateway Time-out的解决方法

级别: 总版主
发帖
7170
云币
15705

\&|zD"*  
1.问题分析 {{3n">s}:  
nginx访问出现504 Gateway Time-out,一般是由于程序执行时间过长导致响应超时,例如程序需要执行90秒,而nginx最大响应等待时间为30秒,这样就会出现超时。 !;[cm|<E  
   >_ )~"Ra  
通常有以下几种情况导致 Glt%%TJb   
]GSs{'Uh B  
Obd};&6Q  
1.程序在处理大量数据,导致等待超时。 #fF~6wopV  
2.程序中调用外部请求,而外部请求响应超时。 %`o3YR  
3.连接数据库失败而没有停止,死循环重新连。 j|WuOZm\0  
)ifEgBT  
aa:97w~s0  
出现这种情况,我们可以先优化程序,缩短执行时间。另一方面,可以调大nginx超时限制的参数,使程序可以正常执行。 $U{ \T4  
3]*_*<D  
<Z8I#IPl  
对于访问超时的设定,nginx与php都有相关的设置,可以逐一进行修改 a0s6G3J+9  
f/_RtOSw  
/1h 0 l;  
8Z^9r/%*Z  
~Sr`Tlp  
d"7l<y5  
,+iREh;  
2.解决方法 ]A;{D~X^w  
nginx配置 OS X5S:XS  
OZHQnvZ  
GMY"*J<E  
nginx.conf中,设置以下几个参数,增加超时时间 ddf# c,SQ  
k"J [mT$b  
r306`)kX  
fastcgi_connect_timeout N*k`'T  
fastcgi连接超时时间,默认60秒 T8ga)BA  
[&Kn&bdKW  
$@[`/Uh   
fastcgi_send_timeout ]5!}S-uJq  
nginx 进程向 fastcgi 进程发送请求过程的超时时间,默认值60秒 {AJcYZV  
{x $h K98  
WVP^C71  
fastcgi_read_timeout U%swqle4  
fastcgi 进程向 nginx 进程发送输出过程的超时时间,默认值60秒  X,zqI  
rA/jNX@S  
_x.!, g{  
+/g/+B_b  
rPK)=[MZ  
php配置 IX!Q X  
S nMHk3(\  
V b=Oz  
php.ini ]F,mj-?4x  
ls(lL\  
piZ0KA"  
max_execution_time r ek89.p  
php脚本最大执行时间 3NEbCILF  
   gAy,uP~,  
php-fpm MroJ!.9  
T.1*32cX  
s!\:%N  
request_terminate_timeout ,S|v>i, @  
设置单个请求的超时时间 <2cl1Fb  
7XE |5G  
Q4gsOx P  
   J|DID+M  
php程序中可加入set_time_limit(seconds)设置最长执行时间 &zl=}xeA  
PD @]2lY(  
0]tr&BLl*  
例如 set_time_limit(0) 表示不超时。
级别: 程序猿
发帖
497
云币
745
只看该作者 沙发  发表于: 2018-09-02
1#KE4(  
之前论坛中好像有人在问类似的问题,看了这个应该能解决了。
^_6.*Mvx  
Z`L-UQJ .  
[ 此帖被服务器云在2018-11-09 22:01重新编辑 ]
级别: 小白
发帖
18
云币
18
只看该作者 板凳  发表于: 2018-09-04
Renginx 出现504 Gateway Time-out的解决方法
请问百度蜘蛛连接超时这个怎么解决,我都折腾了快一个月了,升级配置升级带宽都无用,另外我怎么不能发帖了,版主
级别: 小白
发帖
11
云币
13
只看该作者 地板  发表于: 2018-10-05
Renginx 出现504 Gateway Time-out的解决方法
学习中
发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
批量上传需要先选择文件,再选择上传
 
验证问题: 阿里云官网域名是什么? 正确答案:www.aliyun.com
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)