当前位置:首页 > Web开发 > 正文

从输入url到页面展示到底产生了什么

2024-03-31 Web开发

刚开始写这篇文章还是挺纠结的,因为网上搜索“从输入url到页面展示到底产生了什么”,你可以搜到一大堆的资料。而且面试这道题根基是必考题,仲春份面试的时候,虽然知道这个过程产生了什么,不过对面试官一步步追问下去的,很多细节就不太清楚了。

  比来恰好也在看http协议相关的对象,所以想对这个话题来个深入的总结,本文的目的是通过输入url之后产生的工作来做常识的总结和扩展。所以文章可能会很杂。

总的过程概略如下:

1、输入地点

当我们开始在浏览器中输入网址的时候,浏览器其实就已经在智能的匹配可能得 url 了,他会从历史记录,书签等处所,找到已经输入的字符串可能对应的 url,然后给出智能提示,让你可以补全url地点。对付 google的chrome 的浏览器,他甚至会直接从缓存中把网页展示出来,就是说,你还没有按下 enter,页面就出来了。

2、浏览器查找域名的 IP 地点  

  1、请求一旦倡议,浏览器首先要做的工作就是解析这个域名,一般来说,浏览器会首先检察本地硬盘的 hosts 文件,看看此中有没有和这个域名对应的法则,如果有的话就直接使用 hosts 文件里面的 ip 地点。

2、如果在本地的 hosts 文件没有能够找到对应的 ip 地点,浏览器会发出一个 DNS请求到本地DNS处事器 。本地DNS处事器一般都是你的网络接入处事器商供给,好比中国电信,中国移动。

    3、盘问你输入的网址的DNS请求达到本地DNS处事器之后,本地DNS处事器会首先盘问它的缓存记录,如果缓存中有此笔记录,就可以直接返回功效,此过程是递归的方法进行盘问。如果没有,本地DNS处事器还要向DNS根处事器进行盘问。

  4、根DNS处事器没有记录具体的域名和IP地点的对应关系,而是报告本地DNS处事器,你可以到域处事器上去继续盘问,并给出域处事器的地点。这种过程是迭代的过程。

  5、本地DNS处事器继续向域处事器发出请求,在这个例子中,请求的东西是.com域处事器。.com域处事器收到请求之后,也不会直接返回域名和IP地点的对应关系,而是报告本地DNS处事器,你的域名的解析处事器的地点。

  6、最后,本地DNS处事器向域名的解析处事器发出请求,这时就能收到一个域名和IP地点对应关系,本地DNS处事器不只要把IP地点返回给用户电脑,还要把这个对应关系生存在缓存中,以备下次另外用户盘问时,可以直接返回功效,加快网络访谒。

下面这张图很完美的解释了这一过程:

技术图片

常识扩展: 1)什么是DNS?

  DNS(Domain Name System,域名系统),因特网上作为域名和IP地点彼此映射的一个漫衍式数据库,能够使用户更便利的访谒互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地点的过程叫做域名解析(或主机名解析)。

  通俗的讲,我们更习惯于记住一个网站的名字,好比,而不是记住它的ip地点,好比:167.23.10.2。而计算机更擅长记住网站的ip地点,而不是像等链接。因为,DNS就相当于一个电话本,好比你要找这个域名,那我翻一翻我的电话本,我就知道,哦,它的电话(ip)是167.23.10.2。

2)DNS盘问的两种方法:递归盘问和迭代盘问

1、递归解析

政府部DNS处事器本身不能回答客户机的DNS盘问时,它就需要向其他DNS处事器进行盘问。此时有两种方法,如图所示的是递归方法。局部DNS处事器本身卖力向其他DNS处事器进行盘问,一般是先向该域名的根域处事器盘问,再由根域名处事器一级级向下盘问。最后得到的盘问功效返回给局部DNS处事器,再由局部DNS处事器返回给客户端。

2、迭代解析

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32653.html