HTTP工作原理

本文详细介绍了HTTP协议的工作原理,包括浏览器跳转、URL分析、DNS解析、TCP连接建立与断开等过程。还对比了HTTP1.0和HTTP1.1的连接方式,列举了HTTP请求和响应的方法及状态码。此外,对静态资源、动态资源、伪静态等概念进行了解释,并提及了PV、UV、IP的含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http工作原理
1.浏览器发生一次跳转
2.浏览器分析URL地址,会检查浏览器是否有缓存
3.通过DNS进行域名解析,获取真实服务器的IP地址
4.浏览器通过tcp的方式与服务器建立连接(三次握手)
5.浏览器通过Http协议发起Get方法,获取index.html文件
6.服务端响应浏览器请求的index.html文件
7.服务端与浏览器断开TCP的连接(四次挥手)

http1.0 短连接:建立一次tcp的连接,发起一次http的请求,结束,tcp断开。
http1.1 长连接:建立一次tcp的连接,发起多次http的请求,结束,tcp端口。

http请求:
GET 获取
POST 上传

请求的协议:http://
请求的地址:10.0.0.7
请求的端口:80
请求的文件:index.html
请求的方法:GET
请求的参数:Header 类型、压缩、缓存、语言、浏览器类型

http响应:
响应的状态码
200 请求是成功的
301 永久跳转
302 临时跳转
304 使用本地缓存
404 请求的页面不存在
403 请求被拒绝,权限不足。请求的首页找不到
500 服务器内部错误,通常程序导致
502 请求不到后端的资源
503 服务不可用
504 请求后端资源超时

响应内容大小
响应内容长度
响应长连接
响应时间
响应服务端的软件版本

1.http协议原理总结

1.用户输入域名->浏览器跳转->浏览器缓存->Hosts文件->DNS解析( 递归查询 | 迭代查询 )
客户端向服务端发起查询->递归查询
服务端向服务端发起查询->迭代查询
2.由浏览器向服务端发起TCP连接(三次握手)
客户端 -->请求包连接syn=1 seq=x 服务端
服务端 -->向应客户端syn=1 ack=x+1 seq=y 客户端
客户端 -->建立连接 ack=y+1 seq=x+1 服务端

3.客户端发起http请求:
1.请求的方法是什么: Get 获取
2.请求的Host主机是: www.baidu.com
3.请求的资源是什么: /index.html
4.请求的端口是什么: 默认http是80 https 443
5.请求携带的参数是: 属性(请求的类型、压缩、认证、浏览器信息、等等)
6.请求最后的空行

4.服务端响应的内容是
0.服务端响应的状态码(核心)
1.服务端响应使用的WEB服务软件
2.服务端响应请求文件的类型
3.服务端响应请求的文件是否进行压缩
4.服务端响应请求的主机是否进行长连接

5.客户端向服务端发起TCP断开(四次挥手)
客户端 --> 断开请求 fin=1 seq=x --> 服务端
服务端 --> 响应断开 fin=1 ack=x+1 seq=y --> 客户端
服务端 --> 断开连接 fin=1 ack=x+1 seq=z --> 客户端
客户端 --> 确认断开 fin=1 ack=z+1 seq=sj --> 服务端

静态资源:图片、附件、视频、css、js、html
动态资源:由程序进行解析
伪静态:URL地址展示效果、解决url地址暴露过多的参数不安全、搜索引擎的录入

pv: 页面的浏览量
uv: 来源的终端设备,1台电脑 1个手机
ip: nat技术实现 -->1个IP

假设公司有一座大厦,大厦有100人,每个人有一台电脑和一部手机,上网都是通过nat转换出口,每个人点击网站2次, 请问对应的pv,uv,ip分别是多少

pv: 400
uv: 200
ip:1

1.什么是超文件传输协议
由多个url地址组织在一起的一个文件,这个文件形成一个网状结构,通常我们叫网页web page。
2.什么是url地址
url是一个具体的页面地址
www.baidu.com

3.什么是http工作原理,必须从用户通过浏览器点击页面那一刻开始:
1.浏览器跳转redirect
2.浏览器分析请求的url地址
3.浏览器会查找本地的缓存
4.DNS解析对应的url地址域名
5.DNS回复对应的IP给浏览器
6.浏览器通过真实IP与服务端建立TCP连接
7.浏览器发起请求的资源
请求方法、协议、域名、端口、文件路径、文件类型、长连接、
8.服务端响应客户端请求的资源
响应状态码、文件的大小、文件的长度、文件是否压缩、文件是否缓存、长连接、长连接超时时间
9.服务端与浏览器断开连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值