http协议工作原理及工作流程

url = 协议 + 域名 + 资源路径 比如: https://www.baidu.com/index.html

http : 超文本传输协议

https: 安全套接字协议


HTTP的工作原理 访问https://mirrors.aliyun.com/centos-vault/readme.txt的时候发生了什么? 1、浏览器解析url,对url进行解析域名对应的IP 2、将域名交给DNS服务器,询问dns服务器该域名对应IP是什么 3、DNS返回IP给浏览器 4、浏览器与DNS返回的IP的80端口进行tcp连接 5、请求站点目录下的centos-vault/readme.txt 6、服务器响应返回一个状态码,浏览器就断开tcp连接 7、如果状态码是2xx或者是3xx,就可以加载页面
请求分析

http协议工作原理及工作流程

页面信息 # 基本信息 Request URL: https://www.baidu.com/ # 请求的主机 Request Method: GET # http请求方法 Status Code: 200 OK # 返回的状态码 Remote Address: 14.215.177.39:443 # 目标主机的ip和端口 Referrer Policy: no-referrer-when-downgrade # 响应头部 Bdpagetype: 1 Bdqid: 0xbb77515a0073bd0f Cache-Control: private Connection: keep-alive # 建立长连接 Content-Encoding: gzip Content-Type: text/html;charset=utf-8 # 解析方式和字符集 Date: Wed, 13 May 2020 02:23:21 GMT # 日期 Expires: Wed, 13 May 2020 02:22:25 GMT Server: BWS/1.1 # web服务器的名称 Set-Cookie: BDSVRTM=0; path=http://www.likecs.com/ Set-Cookie: BD_HOME=1; path=http://www.likecs.com/ Set-Cookie: H_PS_PSSID=1438_21100_31595_31605_31270_31463_31228_30824_31163; path=http://www.likecs.com/; domain=.baidu.com Strict-Transport-Security: max-age=172800 Traceid: 1589336601022180301813508355054317583631 Transfer-Encoding: chunked X-Ua-Compatible: IE=Edge,chrome=1 # 请求头部 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3 # 请求的资源类型 Accept-Encoding: gzip, deflate, br # 资源类型压缩 Accept-Language: zh-CN,zh;q=0.9 # 资源类型语言 Cache-Control: max-age=0 # 缓存控制,服务端的缓存 Connection: keep-alive # 长连接 Cookie: BIDUPSID=C660B517FF8D703361BEF27A8E0B4A86; PSTM=1589100937; BAIDUID=C660B517FF8D7033A98FCF75B8449AC5:FG=1; BD_UPN=12314753; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; H_PS_PSSID=1438_21100_31595_31605_31270_31463_31228_30824_31163; delPer=0; BD_CK_SAM=1; PSINO=6; H_PS_645EC=94f7XUqf2UNuFyrpWJocENb5EtAFjG61sQS1yaq%2B9tPHYmQPOTzqO5NtnNU; COOKIE_SESSION=83388_0_8_5_1_8_1_1_8_2_0_0_1589201145_0_0_0_1589201330_0_1589335040%7C9%230_0_1589335040%7C1; __yjsv5_shitong=1.0_7_9449884d52ca169ba37dc788ecf839422ab2_300_1589336389184_106.84.9.86_0cf955f8; yjs_js_security_passport=057098de95624ead2bac92e4c7abd3e8b8e85870_1589336389_js; BD_HOME=1 Host: # 访问的主机 Sec-Fetch-Mode: navigate Sec-Fetch-Site: none Sec-Fetch-User: ?1 Upgrade-Insecure-Requests: 1 # 客户端优先加密 # 访问时浏览器和操作系统标识 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
HTTP请求方法 方法(Method) 含义
GET   请求读取一个Web页面  
POST   附加一个命名资(如Web页面)  
DELETE   删除Web页面  
CONNECT   用于代理服务器  
HEAD   请求读取一个Web页面的头部  
PUT   请求存储一个Web页面  
TRACE   用于测试,要求服务器送回收到的请求  
OPTION   查询特定选项  

返回状态码 状态码 含义
200   成功  
301   永久重定向(跳转)在本地缓存不清除的情况下,可以一直访问,即使服务器断开。  
302   临时重定向(跳转)服务器断开就看不了网页,http会自动跳转为https。  
304   本地缓存,先打开一次网页,再刷新的时候,会使用本地缓存  
307   内部重定向(跳转)  
400   客户端错误  
401   认证失败  
403   找不到主页,权限不足;站点目录没有内容,或者权限不足的情况  
404   找不到页面  
405   请求方法不被允许  
500   内部错误,比如:数据库被停掉  
502   找不到后端主机 bad gateway  
503   服务器过载,服务端请求限制,被ddos攻击的时候可以这样返回。  
504   后端主机超时  

2xx和3xx可以正常访问

4xx都是nginx的报错

5xx后端报错(nginx后面连接的服务报错:mysql、php、tomcat、redis)

正常访问网页的时候基本信息里面返回的状态码:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgyjpx.html