知悉浏览器请求流程,提高网站价值
在浏览器为我们所用时,你是否有想过它究竟是怎么工作的?当打开浏览器,在地址栏输入网址、搜索条、回车一气呵成,到最后看到网页内容的时候,有没有好奇过在这一个瞬间,浏览器发生过了什么?虽然这个过程看似无关紧要,短短几秒钟于我们SEOer而言,其实大有乾坤。在网站建设过程中,想要拥有“上帝视觉”,借鉴个中原理,规避弊端,提高网站的价值,那么知悉浏览器请求流程便显得不可或缺。
域名解析
域名解析怎么和浏览器的请求联系在一起?域名解析通常是指将域名指向网站的服务器IP的步骤,访客通过域名轻松访问储存在服务器内的网站页面内容。浅白来讲,域名解析就是将域名转换成IP地址的过程,这个解析过程是由DNS服务器完成的。例如,在谷歌浏览器输入域名,怎么才能到达相应的IP地址?谷歌会先搜索自身的DNS缓存,倘若有,判断缓存是否是过期的,没有过期,便从缓存里获取;否则,将从系统的DNS缓存中查看。
TCP三次握手
在浏览器请求流程中,所谓的“三次握手”,为了跟踪和协商每次发送的数据,确保在传送过程中,数据发送完全、及时;根据根据数据的接收量来确认数据发送,发送完成后取消联系,并建立虚连接。
通俗来讲,这个TCP三次握手,就像是两人对喊:
A:有人吗?我想要与你建立连接;
B:好呀,可以建立;
A:那一起建立吧。
于是连接就建立起来了。。。
建立TCP链接发起HTTP请求
在三次握手后,浏览器和服务器双方之间就建立起了连接。接下来,浏览器就会像服务器发起HTTP请求命令,此时,浏览器向服务器传递了数据,也就相当于发送请求信息:
- 空行(向服务器发送回车和换行符,告知服务器不再有请求头);
- 请求行(一般由请求方法字段、URL字段和HTTP协议版本字段组成);
- 请求头部(向服务器发送请求时要注明请求的类型);
- 请求数据(一般在post方法中使用,将数据以key value等形式发送请求)。
Web服务器应答
服务器端在接收到HTTP请求后,开始处理,处理完成后给浏览器返回文件。服务器在处理时,对该网页进行判断,返回相应的应答状态码。例如目标网页不存在的话,在返回的页面中返回200状态码。
浏览器解析接收到的文件
浏览器在拿到了代码文件后,会开始解析文件中包含的HTML代码,其中css/image/js等代码,还需要重新向服务器请求下载,建立多一次HTTP连接。
Web服务器关闭tcp连接
通常情况下,服务器发送数据完毕,TCP连接就会关闭,倘若想要让这个TCP连接持续保持打开状态的话,那么可以在浏览器或者服务器的信息中加入相应的代码,使其实现功能。如此一来,浏览器可以继续保持着与服务器“通话状态”,减少了建立新连接的时间,节约网站网络带宽。
归纳
通篇读完,搜索时按下的那一个回车后到底发生了什么,你了解了吗?所以,当你第二次打开网页时,为什么网页打开这么快是有原因的,因为网站的缓存起了重要作用,就连DNS数据也被浏览器缓存里,这样节省了每次请求的时间,提高了网站的运行速度,了解了浏览器请求的流程,对后面的SEO工作大有裨益。
原创文章归Sytech版权所有,转载请注明出处,商用请联系本站获取版权。
相关文章推荐正在加载中...