nginx php 502 bad gateway,nginx 502 bad gateway问题怎么解决
Nginx 502 Bad Gateway的含义是请求的PHP-CGI已经执行,但是由于某种原因(一般是读取资源的问题)没有执行完毕而导致PHP-CGI进程终止,一般来说Nginx 502 Bad Gateway和php-fpm.conf的设置有关。
常见的原因可能是php-cgi进程数不够用、php执行时间长(mysql慢)、或者是php-cgi进程死掉,都会出现502错误。
1. 在安装好的环境中,运行一段时间出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加。
2. php执行超时,修改/usr/local/php/etc/php.ini 将max_execution_time 改为300
3. 磁盘空间不足,可以使用 # df -h命令查看磁盘使用量
4. php-cgi进程死掉了。
通常的排查方法如下:
1、查看php fastcgi的进程数(max_children值)# netstat -anop | grep php-cgi | wc -l
# netstat -anpo | grep php-fpm | wc -l
假如显示是5
2、查看当前进程# ps aux | grep php-fpm 观察fastcgi/php-fpm进程数,假如使用的进程数等于或高于5个,说明需要增加。
3、调整/usr/local/php/etc/php-fpm.conf 的相关设置pm.max_children = 5
request_terminate_timeout = 60
max_children最多5个进程,按照每个进程20MB内存,最多100MB。也就是1分钟。max_children增多,则php-cgi的进程多了就会处理的很快,排队的请求就会很少。
但是设置max_children也需要根据服务器的性能进行设定,一般来说一台服务器正常情况下每一个php-cgi所耗费的内存在20M左右。根据自己服务器购买的内存来实际决定。
request_terminate_timeout执行的时间为60秒,request_terminate_timeout值可以根据服务器的性能进行设定。一般来说性能越好你可以设置越高,20分钟-30分钟都可以。
4. 部分PHP程序的执行时间超过了Nginx的等待时间,可以适当增加nginx.conf配置文件中FastCGI的timeout时间,例如:http
{
......
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
......}
更多Nginx相关技术文章,请访问Nginx教程栏目进行学习!
nginx php 502 bad gateway,nginx 502 bad gateway问题怎么解决相关推荐
- docker 解决php 502,Docker里两个php容器一个正常访问,一个出现502 Bad Gateway nginx/1.17.8。...
问题描述 Docker里两个php容器一个镜像是phpfpm5.6,运行的程序是emlog,正常访问.一个镜像是phpfpm7.3,运行的程序是wordpress,运行的出现502 Bad Gatew ...
- 详解 502 Bad Gateway nginx/xxx
我们访问网站时,偶尔可能会遇到这样的错误:502 Bad Gateway nginx/xxx 刷新一次或多次就好了.这是什么原因呢? 最近使用nginx的代理.负载均衡功能发现了这问题的根本原因. 什 ...
- 详解:502 Bad Gateway nginx/xxx
我们访问网站时,偶尔可能会遇到这样的错误:502 Bad Gateway nginx/xxx 刷新一次或多次就好了.这是什么原因呢? 最近使用nginx的代理.负载均衡功能发现了这问题的根本原因. 什 ...
- 解决宝塔面板安装phpMyAdmin报错502 Bad Gateway nginx
解决宝塔面板安装phpMyAdmin报错502 Bad Gateway nginx 检查是否安装php 到软件商店检查是否安装php 没有安装的话选择php版本安装 phpMyAdmin配置php版本 ...
- nginx中500,501,502,503,504,505状态码的详解及出现的原因/区别(转)
转载别人的,写的确实很直白明了,学习巩固了!很多人都是知其人不知所以然 nginx5xx系列状态码详解 一.502 - Bad Gateway fpm 官方解释:作为网关或者代理工作的服务器尝试执行请 ...
- php fpm 优化502,Nginx+PHP-FPM环境访问网站出现502错误的优化方法 - Nginx - 数安时代(GDCA)SSL证书官网...
游戏后端代码采用Nginx+PHP-FPM的方式部署.放问游戏的时候偶尔会出现502错误. Nginx错误日志出现以下日志 2014/07/05 17:20:58 [error] 18431#0: * ...
- nginx正向代理转发https出现502
nginx正向代理转发https出现502 现象1 原因1 解决方案1 参考博客1 现象2 原因2 解决方案2 参考博客2 其他原因 现象1 nginx的error日志显示如下(xxx是替换过了真实信 ...
- nginx连接php-fpm sock文件失败502
为什么80%的码农都做不了架构师?>>> 今天把vps上php5.3升级到了php5.4,我采用的是nginx+php-fpm的架构,nginx通过php-fpm的socks文 ...
- Nginx面试三连问:Nginx如何工作?负载均衡策略有哪些?如何限流?
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 1.什么是Nginx,谈谈个人都理解,项目中是否用到,为什 ...
- iis php 假死 nginx,网站假死 重启NGINX无效 必须重启PHP 原因分析
一.错误提示说明: Nginx 502 Bad Gateway:请求的PHP-CGI已经执行,但是由于某种原因(一般是读取资源的问题)没有执行完毕而导致PHP-CGI进程终止. Nginx 504 G ...
最新文章
- Nature:植物叶际微生物组稳态维持机制
- html css 表格自动高度,html – 表格单元格(IE)中的Textarea CSS {height:100%}
- pandas parse_data出现异常时,自动跳过
- exists改写SQL,使其走正确的执行计划
- 兄弟连区块链教程Fabric1.0源代码分析configupdate处理通道配置更新
- NOIP2016 D2T3 愤怒的小鸟
- vue 引用网络css_vue如何引用其他组件(css和js)
- c语言累积乘,C语言编程累积2
- 最新 IDEA 2022.1 版本即将发布,骚操作真不少...
- Centos7搭建pptp一键安装脚本
- 防止SQL注入的五种方法
- 计算机管理打不开路径不存在,电脑打不开软件提示路径不正确如何解决
- 企业实战 -什么是代理服务器
- 计算机毕业设计java+ssm生鲜超市进销存管理系统(源码+系统+mysql数据库+Lw文档)
- 霍普金斯计算机专业研究生如何,约翰霍普金斯大学计算机科学研究生项目详情!_托普仕留学...
- redis做浏览历史数据
- 01.朴素贝叶斯介绍
- MFC程序逆向 – 消息篇(上)+(下)
- SAP UI5 应用开发教程之一百零四 - SAP UI5 表格控件的支持复选(Multi-Select)以及如何用代码一次选中多个表格行项目
- PCL:StatisticalOutlierRemoval 统计滤波