返回

从零了解URL输入到页面渲染的全部过程

前端

一、从URL输入到页面渲染的过程
从用户在浏览器中输入URL到页面完全渲染完成,主要经历以下三个阶段:

  1. DNS解析

    • 当用户在浏览器中输入URL时,浏览器首先需要将域名解析为对应的IP地址,这个过程称为DNS解析。
    • DNS解析是由DNS服务器完成的,DNS服务器将域名与IP地址进行映射,以便浏览器能够找到对应的主机。
  2. 浏览器发起请求与服务器交互的过程

    • 在获得服务器的IP地址后,浏览器会与服务器建立TCP连接,并发送HTTP请求到服务器。
    • HTTP请求中包含了请求的URL、请求头等信息。
  3. 服务器处理请求并返回HTTP报文

    • 服务器收到HTTP请求后,会处理请求并返回HTTP报文。
    • HTTP报文中包含了响应头和响应体,响应头中包含了状态码等信息,响应体中包含了请求的资源。
  4. 浏览器解析渲染页面

    • 浏览器收到HTTP报文后,会解析响应头和响应体,并根据响应体中的内容渲染页面。
    • 渲染页面包括解析HTML、CSS、JavaScript等资源,并将其呈现给用户。

二、URL解析的过程

URL解析是将URL分解为各个组成部分的过程,以便浏览器能够正确地请求资源。URL的组成部分包括:

  • 协议 :指定用于传输数据的协议,如HTTP、HTTPS等。
  • 主机名 :指定请求的域名或IP地址。
  • 端口号 :指定请求的端口号,默认为80端口。
  • 路径 :指定请求的资源路径。
  • 查询字符串 :指定请求的参数,以问号(?)开头。
  • 片段标识符 :指定页面中的某个位置,以井号(#)开头。

三、DNS解析的过程

DNS解析是将域名解析为对应的IP地址的过程,以便浏览器能够找到对应的主机。DNS解析的过程主要包括以下步骤:

  1. 浏览器向本地DNS服务器发送DNS查询请求
  2. 本地DNS服务器查询自己的缓存
  3. 本地DNS服务器向根DNS服务器发送DNS查询请求
  4. 根DNS服务器向顶级域名(TLD)DNS服务器发送DNS查询请求
  5. TLD DNS服务器向权威DNS服务器发送DNS查询请求
  6. 权威DNS服务器返回IP地址给TLD DNS服务器
  7. TLD DNS服务器返回IP地址给根DNS服务器
  8. 根DNS服务器返回IP地址给本地DNS服务器
  9. 本地DNS服务器返回IP地址给浏览器
  10. 浏览器使用IP地址向服务器发送HTTP请求

四、浏览器发起请求与服务器交互的过程

浏览器发起请求与服务器交互的过程主要包括以下步骤:

  1. 浏览器建立TCP连接
  2. 浏览器发送HTTP请求
  3. 服务器处理HTTP请求
  4. 服务器返回HTTP报文
  5. 浏览器解析HTTP报文

五、服务器处理请求并返回HTTP报文

服务器处理请求并返回HTTP报文的过程主要包括以下步骤:

  1. 服务器解析HTTP请求
  2. 服务器查找请求的资源
  3. 服务器处理请求的资源
  4. 服务器将处理结果写入HTTP报文
  5. 服务器返回HTTP报文

六、浏览器解析渲染页面

浏览器解析渲染页面的过程主要包括以下步骤:

  1. 浏览器解析HTML
  2. 浏览器解析CSS
  3. 浏览器解析JavaScript
  4. 浏览器构建DOM树
  5. 浏览器构建CSSOM树
  6. 浏览器将DOM树和CSSOM树合并成渲染树
  7. 浏览器布局渲染树
  8. 浏览器绘制渲染树

七、总结

从URL输入到页面渲染是网页浏览的基本流程,涉及多个步骤和技术。本文详细介绍了从URL输入到页面渲染的全部过程,帮助您更深入地了解网页加载背后的原理。