http请求502_从知乎页面的502说一说测试人员应该知道的HTTP协议状态码!

568ffe14ae99c8bbea57a6095e5c7eb7.png

从3.22开始,知乎网站的运行就出问题,总是弹出502页面。

c5220460e2f25c3f0b441ee507d91122.png

到3.23,竟然更大面积的出现502,甚至连手机APP的界面也是如此。

31b16c86e2f8b3ab777b7a95b9b4d22b.png

那么当这种情况出现的时候,站在用户的立场上?他们怎么能够知道这是怎么回事儿?是自己的手机出问题?网络出问题了?还是人品出问题了?

adce49334532e62207895068072abf98.png

如果不是用户自己的问题:那知乎是被人攻击了?还是自己崩溃了?还是被删库跑路了?

不管别人怎么想,但是作为测试人员:我们必须知道,这样的问题来自于服务器内部!因为这是5开头的HTTP协议的响应状态码!

1、HTTP协议基础

  • HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写;
  • 是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议;
  • HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

a6f79e2a65a9883dad9a16a41384708b.png

2、HTTP协议的工作模式

  • HTTP协议工作于客户端-服务端架构为上。
  • 浏览器作为HTTP客户端通过URL向HTTP服务端(即WEB服务器,常用Web服务器有:Apache服务器,IIS服务器(Internet Information Services)等)发送所有请求。
  • Web服务器根据接收到的请求后,向客户端发送响应信息。

46cc39aa625de244c611e8735a48ee1f.png

3、HTTP协议的请求和请求方法

HTTP协议的客户端发送一个HTTP请求到服务器的请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成,下图给出了请求报文的一般格式。

c4764ad5c36f3a22ff25b1b8aa9381e5.png

60f5b441211351103e8c6106208c4a5d.png

4、HTTP协议的响应

HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。具体格式如下图所示:

35bc9fd3744fb067d1f47ba46236c1f0.png

5、HTTP的响应状态码:

当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。HTTP状态码的英文为HTTP Status Code。

750b17b6da47ac6dc0e7dbd9eb360656.png

HTTP协议的状态码分类:

d537c4e417f613a2ec6baf29112c39cf.png

HTTP常见响应状态码

  • 200 - 请求成功
  • 301 - 资源被永久转移到其它URL
  • 404 - 请求的资源(网页等)不存在
  • 500 - 内部服务器错误

354f04000c8532579b0d8c832e822b19.png

5323677d1d79a6b75698f26eea4d0716.png

4abd8de499afd17188faf662b4b4f017.png

f48635d2ed908b581bfa16ef661630c9.png

除此之外,还有一些其他的响应状态码:

fc03a4243ca60d67bf2b6cbccfbfc6c6.png

d91151fda8639129ec9fd2140d21fc3d.png

9019c64d98bf62d6de26229a0b4067c3.png

f2b563a497703743d4b3788571b9d544.png

最后不管怎么说:

4**这样的状态码都是客户端错误,请求包含语法错误或无法完成请求;

5**这样的状态码都是服务器错误,服务器在处理请求的过程中发生了错误。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526079.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

odoo12 日历模块_odoo12

【3个月学odoo12源码】一、开篇2021-01-06 07:33:03年初计划,用三个月的时间过一遍odoo12的源码,为什么是12版本,因为一直接触的这个版本,其他的版本先不求跟进了。计划开展的模式是按照源码中必要的文件逐个过,每个人…

JAVAOO难以理解的部分

JAVA虽然是一门高级语言,在逻辑上相比汇编语言更接近人类语言,但是对于初学者, 一样有不少难以理解部的分。遇到在第一个坎就是在基础部分在流程控制语句里,尤其是碰到多重循环, 再加上if判断,等理清楚了…

python整数转字节数组_【转】Python内置函数(7)——bytearray

英文文档&#xff1a;class bytearray([source[, encoding[, errors]]])Return a new array of bytes. The bytearray class is a mutable sequence of integers in the range 0 < x < 256. It has most of the usual methods of mutable sequences, described in Mutabl…

数据库常见相关问题

1.SQL中in有什么作用&#xff1f;NOT IN呢&#xff1f; exists : 强调的是是否返回结果集&#xff0c;不要求知道返回什么, 比如&#xff1a; select name from student where sex m and mark exists(select 1 from grade where ...) ,只要exists引导的子句有结果集返回&…

sockert组成部分_Linux TCP/IP 协议栈的关键数据结构Socket Buffer(sk_buff )

sk_buff结构可能是linux网络代码中最重要的数据结构&#xff0c;它表示接收或发送数据包的包头信息。它在skbuff.h中定义&#xff0c;并包含很多成员变量供网络代码中的各子系统使用。 这个结构在linux内核的发展过程中改动过很多次&#xff0c;或者是增加新的选项&#xff0c;…

docker 封装sql_docker封装mysql镜像

docker封装mysql镜像发布时间&#xff1a;2020-03-13 12:18:07编辑&#xff1a;admin阅读(967)一、概述直接使用官方的镜像docker pull mysql:5.7但是mysqld.cnf并没有优化&#xff0c;还是默认的。二、封装镜像创建目录# dockerfile目录mkdir -p /opt/dockerfile/mysql# 持久化…

怎么看vray渲染进度_3dmax渲染怎么看渲染时间

回答&#xff1a;如果你用VRAY渲染器的话&#xff0c; 按下F10在渲染选项卷展栏里--渲染器--VRAY系统---帧标记勾选,后面的文字是very的版本信息时间等&#xff0c;你可以对这些文字进行修改&#xff0c;那个rune time&#xff0c;是渲染时间。【3DMAX 2009最终渲染输出设置参数…

apache mysql 登陆_Apache站点,注册登陆功能的实现

$loginmsg 去登陆...;//账户验证if ($_POST[userName]) {$host "127.0.0.1";//mysql主机地址$user "root"; //mysql 登录账户$pwd "949969709"; //mysql登录密码//连接数据库$conn mysqli_connect($host, $user, $pwd);//判断if (!$conn) {di…

mysql 日期计算_mysql两个日期计算天数怎么算?

展开全部mysql两个日期计算天数32313133353236313431303231363533e58685e5aeb931333365633864的计算有如下方式&#xff1a;1、利用TO_DAYS函数select to_days(now()) - to_days(19930908)2、利用DATEDIFF函数select datediff(now(),19930908)参数1 - 参数2 等于间隔天数3、利用…

mysql binlog 订阅_数据库binlog订阅和消费组件canal快速入门

一、什么是canal1.定位Canal是阿里巴巴开源的一款基于mysql数据库binlog增量日志分析提供数据订阅和消费功能的组件2.原理Canal模拟MySQL Slave协议&#xff0c;将自己伪装成MySQL Slave&#xff0c;将Master发送dump协议Master将binlog同步到Slave(这里是Canal)Canal解析binlo…

etmvc mysql乱码_Etmvc学习文档

关于etmvc的视图我们来探讨etmvc如何使用视图&#xff0c;前面关于“Action方法”的介绍中我们提到&#xff0c;每个请求将会映射到一个Action方法。etmvc将根据Action方法的返回类型来决定使用何种视图&#xff0c;大体有以下三种&#xff1a;1返回void时将使用JSP视图。2返回…

工具系列:TensorFlow决策森林_(8)组合决策森林和神经网络模型

文章目录 介绍安装 TensorFlow Decision Forests导入库数据集模型结构模型训练评估决策森林下一步是什么&#xff1f; 介绍 欢迎来到TensorFlow Decision Forests&#xff08;TF-DF&#xff09;的模型组合教程。本教程将向您展示如何使用通用的预处理层和Keras函数式API将多个…

mysql为什么选innodb_为什么现在的MySQL都要使用innoDB引擎-Go语言中文社区

1.MyISAMMyISAM是mysql5.1及之前版本的默认引擎&#xff0c;很久未被更新。使用表级锁&#xff0c; 如果数据量大&#xff0c;一个插入操作锁定表后&#xff0c;其他请求都将阻塞。支持全文索引支持查询缓存保存表的总行数&#xff0c;使用count(*) 并且无where子句的时候可以很…

mysql与文件_MySQL——文件

构成MySQL数据库的各种类型文件&#xff0c;包括&#xff1a;参数文件日志文件socket文件(套接字方式连接时需要)pid文件(mysql实例进程id)MySQL表结构文件存储引擎文件(每个存储引擎自己用来保存数据的文件)关键词参数文件参数类型生命周期与关键字sessionglobal日志文件错误日…

mysql2017windows安装_mysql的windows安装

1.删除所有的目录&#xff0c;只保留datasharebin2.删除BIN下面除以下三个文件之外的所有文件&#xff1a;libmysql.dll(MYSQL5中的文件&#xff0c;在MYSQL5.5中不存在)mysqladmin.exemysqld.exe3.如果要用客户端&#xff0c;请保留mysql.exe4.删除Share目录下除以下目录外的所…

mysql 建表时建立索引_mysql 分享建表和索引的几点规范

一、 MySQL建表&#xff0c;字段需设置为非空&#xff0c;需设置字段默认值。二、 MySQL建表&#xff0c;字段需NULL时&#xff0c;需设置字段默认值&#xff0c;默认值不为NULL。三、 MySQL建表&#xff0c;如果字段等价于外键&#xff0c;应在该字段加索引。四、 MySQL建表&a…

有关于mysql自增型需要返回id_关于mysql自增id,你需要知道的

关于mysql自增id&#xff0c;你需要知道的,主键,重启,索引,类型,字段关于mysql自增id&#xff0c;你需要知道的易采站长站&#xff0c;站长之家为您整理了关于mysql自增id&#xff0c;你需要知道的的相关内容。导读&#xff1a;在使用MySQL建表时&#xff0c;我们通常会创建一个…

python 调用不存在的方法 统一处理_提取不重复数据在Excel、SQL与Python中的处理方法...

村长今天跟大家简单分享一下如何在Excel、SQL和Python中用不同的方法提取不重复值(数据去重)。一、Excel1.1、函数法(数组公式)函数公式&#xff1a;IFERROR(INDEX(A:A,SMALL(IF(MATCH($A$2:$A$16,$A$2:$A$16,0)ROW($1:$15),ROW($2:$16),9^9),ROW(A1))),"")1.2、技巧…

友盟渠道统计mysql_cnzz友盟怎么安装网站统计代码监控网站流量

GC算法http://www.brpreiss.com/books/opus5/html/page424.html http://www.brpreiss.com/books/opus5/html/page4 ...python 定时任务Python 定时任务 最近学习到了 python 中两种开启定时任务的方法,和大家分享一下心得. sched.scheduler() threading.Timer() sched 定时任务…

rpm安装mysql5.5_CentOS下以RPM方式安装MySQL5.5

1、查找以前是否装有mysql命令&#xff1a;rpm -qa|grep -i mysql可以看到mysql的两个包&#xff1a;mysql-4.1.12-3.RHEL4.1mysqlclient10-3.23.58-4.RHEL4.12、删除mysql删除命令&#xff1a;rpm -e --nodeps 包名( rpm -ev mysql-4.1.12-3.RHEL4.1 )3、删除老版本mysql的开发…