浏览器输入URL背后的全过程

在上网冲浪时,使用浏览器输入URL访问网页时,按下回车即可看到一个完整的网页呈现在眼前,这个简单的动作背后隐藏着一系列复杂的技术步骤。从解析域名到加载网页内容,浏览器会经历一连串的操作,最终才将想要访问的页面展示出来。

  1. DNS 解析: 向 DNS 服务器查询域名对应的 IP 地址,DNS 服务器返回域名的相应的 IP 地址。
  2. 建立 TCP 连接: 浏览器与对应 IP 对应的服务器建立连接,通过 TCP 三次握手,服务器发送 SYN 包,服务器回应 SYN-ACK 包,浏览器发送 ACK 包完成三次握手,建立连接。
  3. 发送 HTTP 请求: 浏览器向服务器发送 HTTP 请求(POST, GET 等)包,包括 URL 路径、HTTP 方法、浏览器信息等相关信息。
  4. 服务器的处理与响应: 服务器收到请求后,在后端进行相应的处理,例如查询数据库、执行脚本等,并将结果打包成 HTTP 响应包,包括状态码、head、content 等内容。
  5. 浏览器渲染: 浏览器收到响应后,解析响应内容,解析 HTML 并构建 DOM(文档对象模型)树,构建 CSSOM(CSS 对象模型)树,执行 JS 代码,最终渲染完毕。