资讯动态

访问百度流程

发布时间:2026/8/19 9:04:33 来源:尧图企业网站定制
在浏览器访问https://www.baidu.com 时发生了什么当我们在浏览器地址栏输入https://www.baidu.com并按下回车到看到百度首页的整个过程中背后发生了一系列精密的网络交互。下面是逐步拆解的详细流程。1. URL 解析与输入检查浏览器首先会解析你输入的内容。因为www.baidu.com符合域名格式而不是搜索关键词浏览器会将其识别为一个待访问的网址并准备发起网络请求。2. DNS 域名解析浏览器需要知道www.baidu.com对应的服务器 IP 地址例如220.181.38.148。这个过程通过分布式域名系统完成具体步骤如下2.1 检查浏览器 DNS 缓存浏览器会先查询自己的内部缓存看是否有该域名的记录且仍在有效期内由 TTL 值决定。如果命中直接使用该 IP解析结束。2.2 检查操作系统缓存与 hosts 文件若浏览器缓存未命中则向操作系统发起查询。操作系统会检查自己的 DNS 缓存以及本地的hosts 文件一个静态的域名/IP 映射表。如果找到则返回 IP。2.3 向本地 DNS 服务器发起递归查询如果前两步都失败操作系统会将查询发送到配置的本地 DNS 服务器通常由 ISP 自动分配如114.114.114.114或8.8.8.8。本地 DNS 服务器会代为完成后续查询查询根域名服务器本地 DNS 服务器首先向全球 13 组根域名服务器之一提问“请问www.baidu.com的 IP 是什么”根服务器不直接给出答案而是返回负责.com顶级域的顶级域名服务器地址列表。查询顶级域名服务器接着向其中一个.com顶级域名服务器提问“请问www.baidu.com的 IP 是什么”顶级域名服务器返回负责baidu.com的权威域名服务器地址列表。查询权威域名服务器最后向baidu.com的权威域名服务器提问“请问www.baidu.com的 IP 是什么”权威服务器在其记录中查找www主机对应的 A 记录或 AAAA 记录找到 IP 地址后返回给本地 DNS 服务器。2.4 返回结果并缓存本地 DNS 服务器收到 IP 地址后会将其缓存根据返回的 TTL 值决定缓存时长然后将 IP 返回给操作系统操作系统再返回给浏览器。补充DNS 记录有多种类型如A 记录IPv4 地址、AAAA 记录IPv6 地址、CNAME 记录别名等。HTTPS 访问还需要注意DNS over HTTPS等加密 DNS 技术的使用以增强隐私安全。3. 建立 TCP 连接获得 IP 地址后浏览器尝试与服务器建立连接。由于是 HTTPS默认使用 443 端口。通过TCP 三次握手建立可靠的通信通道客户端 → 服务器发送 SYN 包请求连接。服务器 → 客户端回复 SYN-ACK 包确认请求。客户端 → 服务器发送 ACK 包连接建立成功。4. TLS/SSL 握手加密通道协商因为协议是 HTTPS在传输数据前需要建立加密连接。浏览器和服务器进行TLS 握手主要步骤包括客户端发送支持的加密套件列表和随机数。服务器回复选定的加密套件、数字证书包含公钥和另一个随机数。客户端验证证书的有效性是否由可信 CA 签发、域名是否匹配、是否过期等。验证通过后客户端生成一个预主密钥用服务器的公钥加密后发送给服务器。双方使用三个随机数通过约定算法生成会话密钥后续通信均使用该对称密钥加密。5. 发送 HTTP 请求加密通道建立后浏览器会封装一个 HTTP 请求并通过加密连接发送给服务器。请求大致如下GET / HTTP/1.1 Host: www.baidu.com User-Agent: Mozilla/5.0 ... Accept: text/html,application/xhtmlxml,... Accept-Language: zh-CN,zh;q0.9 ...其他头部实际内容经过加密无法直接看到明文6. 服务器处理与响应百度的服务器通常是负载均衡器后的某台 Web 服务器收到请求后根据请求路径/返回百度首页的 HTML 内容。响应包括状态行、响应头和响应体text复制下载HTTP/1.1 200 OK Content-Type: text/html; charsetutf-8 Content-Length: ... ... HTML 内容7. 浏览器渲染页面浏览器收到 HTML 响应后开始解析和渲染解析 HTML构建DOM 树。遇到link标签请求 CSS发起新的请求获取 CSS 文件解析后构建CSSOM 树。遇到script标签可能阻塞解析直到脚本下载并执行除非标记async或defer。遇到img等资源标签同样发起请求获取图片、字体等。将 DOM 树和 CSSOM 树合并为渲染树计算布局Layout/Reflow最后绘制Paint到屏幕上。这些对 CSS、JS、图片的请求会重复上述步骤DNS 查询、TCP 连接、HTTP 请求等但通常浏览器会并发多个连接以加快加载速度。8. 连接管理所有资源加载完毕后页面显示完整。如果连接空闲浏览器可能会在超时后关闭 TCP 连接四次挥手或保持连接以便后续复用HTTP Keep-Alive。总结整个过程可以概括为URL 解析 → DNS 查询 → TCP 连接 → TLS 握手 → HTTP 请求与响应 → 浏览器渲染。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价