从输入 URL 到页面展示到底发生了什么?

  1. 输入网址,解析URL,准备发送HTTP请求

  2. 检查浏览器是否有缓存,若有则直接返回,若没有则进行下一步网络请求

  3. DNS域名解析,网络请求前,进行DNS解析,获取IP地址,若请求协议是HTTPS,则需建立TLS连接,查询ip的顺序:本地浏览器缓存 -> 本地host文件 -> 路由器缓存 -> DNS服务器 -> 根DNS服器

4.建立连接,通过tcp三次握手建立连接

  1. 浏览器发送HTTP请求,构建请求头、请求行等信息,并把cookie等加入到请求头中,发送请求(若是HTTPS,则还需加解密过程)

  2. 服务器处理请求并返回HTTP资源

  3. 断开连接,通过tcp四次挥手断开连接

  4. 浏览器解析并渲染页面

  • 浏览器解析响应头。若响应头状态码为301、302,会重定向到新地址;若响应数据类型是字节流类型,一般会将请求提交给下载管理器;若是HTML类型,会进入下一部渲染流程。
  • 浏览器解析HTML文件,创建DOM树,解析CSS进行样式计算,然后将CSS和DOM合并,构建渲染树;最后布局和绘制渲染树,完成页面展示。
相关推荐
a***59261 小时前
用nginx正向代理https网站
运维·nginx·https
无证驾驶梁嗖嗖2 小时前
无需公网 IP,MongoDB 也能跨环境访问?试试这个实用方案
网络协议·tcp/ip·mongodb
Mu.3872 小时前
计算机网络模型
网络·网络协议·计算机网络·安全·http·https
我有一棵树2 小时前
file 协议与 http 协议的区别:为什么本地 HTML 无法加载相对路径 JS,以及正确的解决方式
javascript·http·html
骥龙5 小时前
4.12、隐私保护机器学习:联邦学习在安全数据协作中的应用
人工智能·安全·网络安全
xu_yule7 小时前
网络和Linux网络-3(套接字编程)TCP网络通信代码
linux·网络·tcp/ip
世界尽头与你9 小时前
Go pprof 调试信息泄露漏洞
安全·网络安全·golang·渗透测试
飞行增长手记12 小时前
什么是高匿代理IP?安全吗?怎么选?
网络协议·tcp/ip·安全
Whoami!12 小时前
❼⁄₂ ⟦ OSCP ⬖ 研记 ⟧ 查找漏洞的公共利用 ➱ 离线资源(上)
网络安全·信息安全·metasploit·searchsploit
上海云盾安全满满16 小时前
高防 IP 是如何帮助数藏行业防刷
网络·网络协议·tcp/ip