502badgateway解决办法(502badgateway修复)

502badgateway解决办法(502badgateway修复)

扫码添加渲大师小管家,免费领取渲染插件、素材、模型、教程合集大礼包!

Nginx 502错误原因和解决方法

不管你是做运维还是做开发,哪怕你是游客,时不时会遇到 502 Bad Gateway 或 504 Gateway Time-out。出现这页面,把服务重启下,再实在不行重启下服务器,问题就解决了,特殊情况请继续阅读。

502badgateway解决办法(502badgateway修复)

状态码解释

502 Bad Gateway:作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。

504 Gateway Time-out:作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI 标识出的服务器,例如 HTTP、FTP、LDAP)或者辅助服务器(例如 DNS)收到响应。

502 Bad Gateway原因分析

将请求提交给网关如 php-fpm 执行,但是由于某些原因没有执行完毕导致 php-fpm 进程终止执行。说到此,这个问题就很明了了,与网关服务如 php-fpm 的配置有关了。

php-fpm.conf 配置文件中有两个参数就需要你考虑到,分别是 max_children 和 request_terminate_timeout。

max_children 最大子进程数,在高并发请求下,达到 php-fpm 最大响应数,后续的请求就会出现 502 错误的。可以通过 netstat 命令来查看当前连接数。

request_terminate_timeout 设置单个请求的超时终止时间。还应该注意到 php.ini 中的 max_execution_time 参数。当请求终止时,也会出现 502 错误的。

当积累了大量的 php 请求,你重启 php-fpm 释放资源,但一两分钟不到,502 又再次呈现,这是什么原因导致的呢?

这时还应该考虑到数据库,查看下数据库进程是否有大量的 locked 进程,数据库死锁导致超时,前端终止了继续请求,但是 SQL 语句还在等待释放锁,这时就要重启数据库服务了或 kill 掉死锁 SQL 进程了。

502badgateway解决办法(502badgateway修复)

504 Gateway Time-out原因分析

504 错误一般是与 nginx.conf 配置有关了。主要与以下几个参数有关:fastcgi_connect_timeout、fastcgi_send_timeout、fastcgi_read_timeout、fastcgi_buffer_size、fastcgi_buffers、fastcgi_busy_buffers_size、
fastcgi_temp_file_write_size、fastcgi_intercept_errors。

特别是前三个超时时间。如果 fastcgi 缓冲区太小会导致 fastcgi 进程被挂起从而演变为 504 错误。

总结

总而言之,502 错误主要从四个方向入手:

max_children

request_terminate_timeout、max_execution_time

数据库

网关服务是否启动如 php-fpm

504 错误主要查看 nginx.conf 关于网关如 fastcgi 的配置。

分享到 :
相关推荐

建站服务器配置这六点方面不容忽视(建站服务器配置这六点方面不容忽视问题)

随着互联网的普及。越来越的企业为扩展线上业务都搭建自己的网站。而服务器是搭建网站不可...

云服务器租用价格受哪些因素影响(云服务器租用价格受哪些因素影响呢)

影响云服务器租用价格的影响有:1。机房设施。不同机房的宽带费用及机柜费用等价格不同。...

美国服务器Linux系统安全如何加固(美国服务器linux系统安全如何加固)

美国服务器Linux系统安全加固的方法:1。实时监控美国服务器的CPU状态。以免美国...

棋牌游戏服务器租用注意事项

随着人们生活水平的提高。互联网游戏的发展。棋牌游戏作为其中比较重要的游戏之一。对于我...

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注