返回
从零了解URL输入到页面渲染的全部过程
前端
2024-01-22 22:02:34
一、从URL输入到页面渲染的过程
从用户在浏览器中输入URL到页面完全渲染完成,主要经历以下三个阶段:
-
DNS解析
- 当用户在浏览器中输入URL时,浏览器首先需要将域名解析为对应的IP地址,这个过程称为DNS解析。
- DNS解析是由DNS服务器完成的,DNS服务器将域名与IP地址进行映射,以便浏览器能够找到对应的主机。
-
浏览器发起请求与服务器交互的过程
- 在获得服务器的IP地址后,浏览器会与服务器建立TCP连接,并发送HTTP请求到服务器。
- HTTP请求中包含了请求的URL、请求头等信息。
-
服务器处理请求并返回HTTP报文
- 服务器收到HTTP请求后,会处理请求并返回HTTP报文。
- HTTP报文中包含了响应头和响应体,响应头中包含了状态码等信息,响应体中包含了请求的资源。
-
浏览器解析渲染页面
- 浏览器收到HTTP报文后,会解析响应头和响应体,并根据响应体中的内容渲染页面。
- 渲染页面包括解析HTML、CSS、JavaScript等资源,并将其呈现给用户。
二、URL解析的过程
URL解析是将URL分解为各个组成部分的过程,以便浏览器能够正确地请求资源。URL的组成部分包括:
- 协议 :指定用于传输数据的协议,如HTTP、HTTPS等。
- 主机名 :指定请求的域名或IP地址。
- 端口号 :指定请求的端口号,默认为80端口。
- 路径 :指定请求的资源路径。
- 查询字符串 :指定请求的参数,以问号(?)开头。
- 片段标识符 :指定页面中的某个位置,以井号(#)开头。
三、DNS解析的过程
DNS解析是将域名解析为对应的IP地址的过程,以便浏览器能够找到对应的主机。DNS解析的过程主要包括以下步骤:
- 浏览器向本地DNS服务器发送DNS查询请求
- 本地DNS服务器查询自己的缓存
- 本地DNS服务器向根DNS服务器发送DNS查询请求
- 根DNS服务器向顶级域名(TLD)DNS服务器发送DNS查询请求
- TLD DNS服务器向权威DNS服务器发送DNS查询请求
- 权威DNS服务器返回IP地址给TLD DNS服务器
- TLD DNS服务器返回IP地址给根DNS服务器
- 根DNS服务器返回IP地址给本地DNS服务器
- 本地DNS服务器返回IP地址给浏览器
- 浏览器使用IP地址向服务器发送HTTP请求
四、浏览器发起请求与服务器交互的过程
浏览器发起请求与服务器交互的过程主要包括以下步骤:
- 浏览器建立TCP连接
- 浏览器发送HTTP请求
- 服务器处理HTTP请求
- 服务器返回HTTP报文
- 浏览器解析HTTP报文
五、服务器处理请求并返回HTTP报文
服务器处理请求并返回HTTP报文的过程主要包括以下步骤:
- 服务器解析HTTP请求
- 服务器查找请求的资源
- 服务器处理请求的资源
- 服务器将处理结果写入HTTP报文
- 服务器返回HTTP报文
六、浏览器解析渲染页面
浏览器解析渲染页面的过程主要包括以下步骤:
- 浏览器解析HTML
- 浏览器解析CSS
- 浏览器解析JavaScript
- 浏览器构建DOM树
- 浏览器构建CSSOM树
- 浏览器将DOM树和CSSOM树合并成渲染树
- 浏览器布局渲染树
- 浏览器绘制渲染树
七、总结
从URL输入到页面渲染是网页浏览的基本流程,涉及多个步骤和技术。本文详细介绍了从URL输入到页面渲染的全部过程,帮助您更深入地了解网页加载背后的原理。