从输入地址到页面渲染完成的整体过程
第一步 输入网址URL
平常我们输入的网址例如https://www.baidu.com/
第二步. 缓存机制
将URL与缓存进行对比如果请求的页面在缓存中且未过期,直接进行第七步。
第三步 DNS解析
DNS解析得到服务器的ip地址。(我们平时输入的是域名,因为ip比较难记,所以需要DNS进行解析)
第四步 TCP连接
得到IP后就可以与服务器建立连接。需要通过TCP协议(三次握手),才能建立连接获取数据。
第五步 发送http请求
浏览器向web服务器发送了一个HTTP请求,请求中包含请求文件的位置、请求文件的方式等等
第六步 接受响应,判断状态码
浏览器接受HTTP响应,检查HTTP header里的状态码,并做出不同的处理方式。这也就是我们常见的404错误页面,304可以使用缓存、200下一步解码和渲染、204页面会发生更新等。
第七步 判断缓存
如果可以使用缓存,则可以进行缓存。不可以则禁止使用缓存。
第八步 解码
浏览器拿到index.html文件后,开始解析其中的html代码,遇到js/css/image等静态资源时,就向服务器去请求下载。
第九步 渲染
浏览器可以一边渲染一边下载