美文网首页
在浏览器输入一个URL至页面呈现都发生了什么

在浏览器输入一个URL至页面呈现都发生了什么

作者: jackie季 | 来源:发表于2018-07-19 17:23 被阅读0次
  1. 首先在浏览器输入一个网址

  2. 浏览器通过DNS去查找对应的IP地址
    DNS的查找过程如下:
    a. 浏览器先查找缓存的DNS记录有没有,没有就做一个系统调用,获取系统缓存的记录;
    b. 接着会去路由器的缓存DNS里面找;
    c. 如果没有记录就会到ISP的DNS缓存中查看记录;(ISP缓存,本身是一种宽带接入提供商给网页批量访问加速的技术。ISP会将当前访问量较大的网页内容放到ISP服务器的缓存中,当有新的用户请求相同内容时,可以直接从缓存中发送相关信息,不必每次都去访问真正的网站,从而加快了不同用户对相同内容的访问速度,同时也能节省网间流量结算成本。)
    d. 从跟域名服务器开始进行递归搜索,从顶级域名到二级三级域名,最终得到一个IP地址

  3. 浏览器给服务器发送HTTP请求,请求头header信息如下图:


    image.png
  4. 由于输入的原因,可能服务器会发送301重定向响应,这时浏览器继续请求重定向访问的地址
    为什么服务器一定要重定向而不是直接发会用户想看的网页内容呢?这个问题有好多有意思的答案。
    其中一个原因跟搜索引擎排名有 关。你看,如果一个页面有两个地址,就像http://www.igoro.com/http://igoro.com/,搜索引擎会认为它们是两个网站,结果造成每一个的搜索链接都减少从而降低排名。而搜索引擎知道301永久重定向是 什么意思,这样就会把访问带www的和不带www的地址归到同一个网站排名下。

还有一个是用不同的地址会造成缓存友好性变差。当一个页面有好几个名字时,它可能会在缓存里出现好几次。

  1. 服务器处理请求
    服务器会查看请求的参数和cookie等,来进行一些数据的操作

  2. 服务返回HTML响应


    image.png

    Response Headers说明了如何去解释响应信息

  3. 浏览器显示HTML
    在浏览器没有完整接受全部HTML文档时,它就已经开始显示这个页面了;
    当浏览器显示的时候发现获取其他一些内容(如图片、css样式表、js文件),浏览器会再次发送请求

相关文章

网友评论

      本文标题:在浏览器输入一个URL至页面呈现都发生了什么

      本文链接:https://www.haomeiwen.com/subject/tdptmftx.html