输入url到页面加载全过程总结

本文详细介绍了从输入URL到页面加载的全过程,包括DNS域名解析、TCP连接、HTTP请求与响应、页面渲染及TCP断开连接。重点讲解了DNS的递归与迭代查询、三次握手建立TCP连接以及渲染页面时的重排与重绘现象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

这个问题可以说是面试必问的问题了,而且涉及的知识点有好几个,如html解析、渲染、DNS解析等,也有很多延伸的问题,之前面试的时候,我只是简单的背了背答题流程,详细的并不是很了解,所以决定总结一下。

一、主要过程

  1. 输入地址,回车
  2. 浏览器解析URL,解析出域名host
  3. DNS域名解析:浏览器将域名转换成服务器ip地址,通过IP地址与服务器建立TCP连接(三次握手)
  4. 客户端向服务端发送HTTP请求,如果服务器返回以 301 之类的重定向,浏览器根据相应头中的 location 再次发送请求
  5. 服务器收到请求并响应HTTP请求,处理请求生成 html 代码,返回给浏览器
  6. 浏览器开始解析渲染页面并显示
  7. 如果有多个资源,重复456,直至资源全部加载完毕
  8. 关闭连接(四次挥手)

二、知识点详解

1、DNS域名解析

(1)为什么要域名解析?

  因为浏览器并不能通过域名直接找到对应的服务器,而是要通过 IP 地址查找。

(2)什么是DNS?

  DNS,又称域名系统,是互联网的一项服务。它作为将域名IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS 协议可以使用 UDP 或者 TCP 进行传输,使用的端口号都为 53,但大多数情况下 DNS 都使用 UDP 进行传输。

(3)什么是DNS域名解析?

  DNS域名解析实际就是,通过域名,得到该域名对应的IP地址的过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值