输入网址到页面呈现过程

面试中经常会问的一个问题,先简述,后面会仔细描述每一步骤

  • 输入网址,敲回车
  • 浏览器通过输入的URL,构建HTTP请求报文
  • 浏览器发起DNS解析,将域名转换为IP地址
  • 浏览器将请求报文发送给服务器
  • 服务器接收到请求报文并进行解析
  • 服务器处理用户请求,将处理结果封装成HTTP响应报文
  • 服务器将响应报文发送给浏览器
  • 浏览器接受服务器发送的HTTP响应报文,并解析
  • 浏览器渲染引擎解析HTML生成DOM树,CSS规则树,生成渲染树,进行layout,最后绘制
  • 解析HTML时遇到新的资源需要再次发起请求
  • 最终浏览器呈现页面