服务器状态码502什么意思,Http状态码502问题复盘

问题原因分析:502 bade gateway 一般都是upstream出错,对于PHP,造成502的原因常见的就是脚本执行超过timeout设置时间,或者timeout设置过大,导致PHP进程长时间不能释放。

控制PHP脚本执行时间的配置有两种:

php.ini文件中max_execution_time(全局配置)

php-fpm.conf中request_terminate_timeout

如果这两个配置都有设置,那么系统只会执行php-fpm.conf中的设置(优先级php-fpm.conf>php.ini)

下面让服务器报出502的状态码:

配置php-fpm.conf中的request_terminate_timeout(该项真正的位置是在www.conf中)为3s ,配置完成后记得重启php-fpm进程(centos7下重启:systemctl restart php-fpm)

79bbe19034ed6ffb47bf961b1512c4d5.jpg

68328f10e6609c54a623aa76cfaab382.png

在项目根目录下写一个test.php 测试脚本代码如下:

sleep(10);

echo '123';

浏览器访问http://www.flyeagle.club/test.php 结果如下:

查看谷歌浏览器的调试工具显示:

561eb688d76215f4025691707b0b88e9.png

235afe07916987c7b99b56a4a1a39110.png

解决方案:

1.适当增大php脚本执行时间,通过修改php.ini或php-fpm.conf来配置

2.从根本原因出发,定位php脚本, 查出真正导致php执行时间过长的原因(循环嵌套过多,数据库死锁)

3.高并发的话考虑php-fpm.conf中的max_children最大子进程数

4.是否启动php-fpm

深入分析HTTP状态码502(nginx+php-fpm)

我们的一个web项目,由于新上城市增多,导致访问量增大,DB压力增大,作为提供接口的业务方,最近被下游反馈大量请求"502". 502,bad gateway,一般都是upstre ...

Http状态码(转)

什么是Http状态码?(转自http://bbs.tui18.com/thread-11597640-1-1.html) 百度百科上解释为:HTTP状态码(HTTP Status Code)是用以表示 ...

HTTP状态码分类说明

状态码分类 HTTP状态码被分为五大类, 目前我们使用的HTTP协议版本是1.1, 支持以下的状态码.随着协议的发展,HTTP规范中会定义更多的状态码. 小技巧:  假如你看到一个状态码518, 你并 ...

HTTP协议 (六) 状态码详解

HTTP协议 (六) 状态码详解 HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果 ...

HTTP协议状态码详解

HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果是做AJAX,REST,网络爬虫, ...

Web开发中常用的状态码

在HtttpServletResponse类中有关于状态码的描述. static int SC_ACCEPTED Status code (202) indicating that a request ...

HTTP协议6之状态码--转

HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果是做AJAX,REST,网络爬虫, ...

http协议状态码及其意义

什么是状态码? 状态码的作用是:服务器告诉客户端,发生了什么事. 在http协议中状态码出现在http response 的第一行.它会返回一个三位数的状态码和状态信息.状态码为了便于程序进行处理,而 ...

常用的HTTP协议状态码

200 - OK,服务器成功返回网页     - Standard response for successful HTTP requests. 301 - Moved Permanently(永久跳 ...

随机推荐

做个简单的RSS订阅(ASP.NET Core),节省自己的时间

0x01 前言 因为每天上下班路上,午休前,都是看看新闻,但是种类繁多,又要自己找感兴趣的,所以肯定会耗费不少时间. 虽说现在有很多软件也可以订阅一些自己喜欢的新闻,要安装到手机,还是挺麻烦的.所以就 ...

[资源] Resources on Self-Driving Car

Talk NVIDIA at CES 2016 - Self Driving Cars and Deep Learning GPUs Projects Autoware Open-source sof ...

从100PV到1亿级PV网站架构演变

如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 一个网站就像一个人,存在一个从小到大的过程.养一个网站和养一个人一样,不同时期需要不 ...

proc_dir_entry

struct proc_dir_entry {        unsigned int low_ino;        unsigned short namelen;        const cha ...

Sharepoint 问题集锦 - external list (外部列表)

使用Sharepoint开发过程中遇到的问题总结. 错误1: Unable to display this Web Part. To troubleshoot the problem, open th ...

salesforce lightning零基础学习(一) lightning简单介绍以及org开启lightning

lightning对于开发salesforce人员来说并不陌生,即使没有做过lightning开发,这个名字肯定也是耳熟能详.原来的博客基本都是基于classic基于配置以及开发,后期博客会以ligh ...

nginx 编译增加新的模块

原已经安装好的nginx,现在需要添加一个未被编译安装的模块: nginx -V 可以查看原来编译时都带了哪些参数 原来的参数:--prefix=/app/nginx 添加的参数: --with-ht ...

使用ss命令对tcp连接数和状态的监控性能优化

之前对tcp的监控采用netstat命令,发现在服务器繁忙的时候效果不理想,这个命令占用大量的cpu有时候高达90%以上,可能会导致业务的不稳定,所以改用ss命令对脚本进行优化 对tcp连接数和状态的 ...

无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够)

比如输入apt-get install eclipse,或者apt-get update 会提示 无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够)  无法对状态 ...

测试复盘(Test Retrospective)是软件测试项目中的一项重要活动,旨在回顾和评估测试过程和结果,以提高测试质量和效率。在测试复盘中,一般会复盘以下方面: 1. 测试目标和范围:回顾测试过程中设定的测试目标和范围,评估是否达到了预期的测试目标,并确定是否需要调整或细化测试范围。 2. 测试计划和策略:评估测试计划和策略的有效性,包括测试用例设计方法、测试环境的搭建、测试数据的准备等,确定是否需要进行改进或调整。 3. 测试执行过程:回顾测试执行过程,包括测试用例的执行情况、缺陷发现和修复的效率等,识别测试执行中的问题和挑战,并提出改进措施。 4. 缺陷管理:评估缺陷管理过程的效果,包括缺陷发现、报告、分析和跟踪的流程和工具,确定是否需要优化缺陷管理流程。 5. 测试工具和技术:评估使用的测试工具和技术的效果,包括自动化测试工具、性能测试工具等,确定是否需要更新或改进工具和技术的选择和使用。 6. 测试团队协作:评估测试团队的协作和沟通效果,包括团队合作、知识分享和问题解决等方面,确定是否需要加强团队协作和沟通。 7. 测试结果和质量:回顾测试结果和质量指标,包括通过的测试用例比例、发现的缺陷数量和严重性等,确定是否达到了预期的质量目标,并提出改进建议。 测试复盘的目的是识别问题、总结经验、改进流程,以提高测试的效率和质量。通过对测试过程的全面复盘,可以帮助团队发现问题并采取相应措施,从而不断改进和提升测试工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值