从浏览器地址栏输入URL到浏览器呈现数据全过程解析

Posted ndos

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从浏览器地址栏输入URL到浏览器呈现数据全过程解析相关的知识,希望对你有一定的参考价值。

一、输入设备(或粘贴)输入 URL,按下 Enter键 或其他按钮开始请求。

二、浏览器开始解析 URL

关于 URL 到相关知识点:什么是URI,URL以及URN,你真的理解了吗。

1、URL 是否合法

2、URL 中的字符转换

3、HSTS列表 协议升级。相关文章 HSTS详解。在现代浏览器中,这一步有可能导致请求中止。

三、检查本地缓存,根据缓存情况决定下一步的动作

1、 强缓存(Cache-Control 和 Expires)   直接从本地缓存读取资源(若是这步,便没有下面的步骤)

2、弱缓存(Etag、If-None-Match 和 Last-Modified、If-Modified-Since)  需要与服务器通信进行一次确认缓存是否可用

3、无缓存  与服务器通信请求数据

关于强弱缓存的文章: HTTP强缓存和协商缓存

 四、浏览器开始进行 DNS 解析

解析的过程依次为:浏览器缓存、本机缓存、hosts文件、路由器缓存、ISP DNS缓存、DNS递归查询。

五、与目标IP的服务器进行TCP链接(三次握手)

参考文章: TCP三次握手详解及释放连接过程

六、发送 HTTP或HTTPS 请求

参考文章:Http和Https的区别

七、服务器对请求进行响应

1、304响应 对应对是弱缓存响应

2、200响应 对应对是无缓存响应

在服务器进行响应之前,内部还有其他的内容。

比如代理服务器,数据库查询等等。

八、浏览器接收响应,并视情况关闭TCP连接

九、根据响应对内容,浏览器进行不同对处理

下面仅仅对 html 网页文档进行讨论。

 

十、下文待续。

 

 

参考文章: https://www.jianshu.com/p/558455228c43

以上是关于从浏览器地址栏输入URL到浏览器呈现数据全过程解析的主要内容,如果未能解决你的问题,请参考以下文章

从浏览器地址栏输入url到页面呈现

从输入url到浏览器呈现网页发生了什么?

输入网址到页面呈现的所经历的过程

从输入url到页面呈现的过程

当用户输入一个url地址后,到看到页面的过程,期间发生了啥?

从输入URL到浏览器显示页面发生了啥?