fangchaolong
文章57
标签24
分类10
从输入一个url到浏览器页面展示都经历了哪些过程?

从输入一个url到浏览器页面展示都经历了哪些过程?

具体可以分为一下几步:

  1. 输入url,回车
  2. 浏览器先查看浏览器缓存 -> 系统缓存 -> 路由器缓存 如果缓存中有,会直接在屏幕中显示页面内容。若没有,则跳到第三步操作。
  3. 在发送http请求前,需要域名解析(DNS解析),获取解析对应的url。
  4. 浏览器与服务器进行tcp三次握手
  5. 握手成功之后, 浏览器向服务器发送http请求,请求数据包
  6. 服务器处理浏览器的请求,将数据返回给浏览器
  7. 浏览器收到http响应
  8. 浏览器读取数据,并解析html结构。
  9. 生成Dom树、解析css样式、js交互
  10. 客户端和服务器交互
  11. ajax查询

其中,步骤2的具体过程是:
浏览器缓存:浏览器会记录DNS一段时间,因此,只是第一个地方解析DNS请求;

操作系统缓存:如果在浏览器缓存中不包含这个记录,则会使系统调用操作系统,获取操作系统的记录(保存最近的DNS查询缓存);

路由器缓存:如果上述两个步骤均不能成功获取DNS记录,继续搜索路由器缓存;

ISP缓存:若上述均失败,继续向ISP搜索。

无以生计,卖文苟延

微信
支付宝