当你想要浏览网页输入完网址按下回车,到看到网页这个过程中发生了什么?

具体过程

a. 通过本地DNS或者DNS服务器进行域名解析,将网址域名转换为服务器对应的IP地址

 

b. 向该IP地址发起TCP的3次握手

 

c. 建立TCP连接后发起http请求

 

d. 服务器端响应http请求,浏览器得到html代码

 

e. 浏览器解析html代码,并请求html代码中的资源

 

f. 浏览器对页面进行渲染呈现给用户

 

那么问题来了,当执行完e过程之后,刚才建立的TCP连接会因为资源传输完成而断开吗?

答案是根据Connection请求头,如果是keep-alive服务器就保持住tcp连接,如果没有或是close则服务器response传输完后主动关闭tcp连接。
当然现在浏览器都是http1.1都默认是keep-alive的,在浏览器tab关闭时,tcp连接关闭。(http1.0及以前的都是请求完就直接关闭连接了)

你可能感兴趣的:(HTTP)