从输入url到页面展现(二)找服务器其实是在找IP地址 ...

打印 上一主题 下一主题

主题 572|帖子 572|积分 1720

前言

前一节我们讲述了url的规则,url的几种范例,以及访问web服务器的时间,如果用户访问的url如果不包罗index.html的话,大概会如何去探求这个url对应的文件,如果感爱好的同学可以转头去看上一篇:从输入url到页面展现(一)从浏览器解析url开始
   下面开始本小节的知识点,浏览器解析url后,我们先对相应哀求有个熟悉,然后知道找web服务器,其实主要是找那台详细服务器的IP地址
  

目录
前言
1.  通过url发送哀求,返反相应
2. 一个图片也是一个http消息 
3.  找web服务器,其实是在找IP地址
4. 我要给口试官用大白话讲网络
5. 把服务器IP地址说的更详细一点 
6. 小结


1.  通过url发送哀求,返反相应

比方我们上节课中说到的 http://www.aa.com/hello/index.html 这个例子,用户输入的这个url网址,一般都是以get的方式向服务端发送哀求,而浏览器通过解析,也会生成http哀求消息,告诉服务器,你要读取服务器下 /hello/index.html 文件的数据,存放到相应消息中,然后返回给客户端。等浏览器收到这些相应消息的时间,就会通过一定的规范,将返回数据表现在浏览器上,呈现给用户。而返反相应的过程中,会包罗一个重要的相应状态码

2. 一个图片也是一个http消息 

如果你必要哀求的网页是纯文本的,那么直接返反相应,浏览器渲染即可。如果页面中包罗图片信息,1个或者N个,那么网页会在相应的位置嵌入图片文件标签,我们知道HTML标签中的图片标签是img,浏览器就会在相应位置进行盘算,然后留出表现图片所必要的位置,空间,信息,这个时间,会再次生成http消息,向图片所在的服务器发送哀求。这个步骤和我们获取网页文件的步骤是一样的,什么这个口试题可以换一个问法,就是:如果浏览器输入一个图片的url,到页面渲染图片,这个过程是怎么样的?
我们知道,发送一个http哀求,生成1个http消息,一般只包罗1个url,所以也就是只能获取一个图片,那么如果网页中包罗5个图片呢,算上我们之前获取网页的http哀求消息,一共就会生成6个http消息了。
所以,浏览器和web服务器的重要分歧之一或者说浏览器的重点工作之一,就是指挥这一系列哀求进行发送,然后获取到相应信息进行图文并茂的展示,但是web服务器,说真话,他就比较懒,他不关心你必要展示几个图片,多大多小,你必要的图片是要展示在网站上,还是本身本地的页面上,你哀求,我就给你,我不关心你哀求反复,你哀求一条我就给你一条相应。
但相应头却也有所不同,比如相应HTML文件的content-type值是text/html,而相应图片的content-type值是 image/png


3.  找web服务器,其实是在找IP地址

尽管我们是在浏览器输入的 http://www.aa.com/hello/index.html,但是浏览器也就是解析一下这个url链接,他其实浏览器并没有往服务器发送哀求的网络本事。我们上面说了,浏览器解析了url,生成1个或者N个http哀求,这就是个预备工作,谁可以往出发送哀求呢?你是不是想到了网线,wifi啥的?说的笼统点,就是浏览器希望告诉操纵系统,我要往出发哀求啦,你可以帮我发送出去吗?
虽然我们输入的 www.aa.com 什么什么,但服务器那台机器其实就是所谓的ip,我们一般团队里的同事都说ip为什么什么的那台机器,不会说域名所属的那台机器,也只有ip能表明我们真正要找到的那台,存放着我们index.html的那台机器。所以,我们输入的这个域名,其实和服务器那台机器的ip是有一定的绑定关系的。也就是说一个域名大概指向了1台或者N台服务器。
4. 我要给口试官用大白话讲网络

我们整个互联网的那个计划思路是啥?你要想到TCP/IP,比如我们每个公司或者家里可以称作为一个小的子网,我们的公司里有好多台机器,也就是子网其实也包罗了很多台机器,我们在公司可以不联网也互相访问,很多人一问他你做过什么项目,做过管理系统,你们访问不到,我们只能内部网络访问,外边访问不着。这就比如是我们的管理系统部署在公司内部的局域网,或者是公司这个小子网上。这些个内部的机器再找个集线器链接起来,我们互相访问。但想访问外面的东西,让本身公司连上往,每个公司再添加上一个路由器,互相毗连起来,构成了大的互联网。

5. 把服务器IP地址说的更详细一点 

比如许文强住在霞飞路99号,这么说大概还是不敷详细,比如许文强,陆如萍都住在霞飞路99号吧,然后许文强住在99号301室。这个99号就是整个子网,99号里住着很多人,也许还有明台住在302室,所以他们很多人都住在99号,那么号这个“网络号”就分配给了住在99号,而详细到某一个室呢,就是那一台详细的服务器了,室也就有了本身的主机号,详细起来“霞飞路99号301室”,这个地址就很详细了,快递一个剃须刀直接就可以发送给许文强,而这个详细的地址不就是所谓的IP地址了嘛。
   通过这个详细的IP地址,我们找到了许文强,也就是找到了存放 /hello/index.html 的服务器,从而将之宿世成的http消息发送到详细的服务器。不外真实的网络肯定还有先过“集线器”这一步,不外做为答复口试题,这一步可以省略掉。
  说点题外话,网络中有个专用词叫“下一跳”,大概思路就是我们本地的浏览器把http消息委派给操纵系统,操纵系统往出发消息,然后我们处于一个子网呀,对吧,子网把消息发送给“集线器”,集线器又找到我们本身或者离我们最近的路由器,这个时间已经把ip地址告诉路由器了,路由器看到ip地址“霞飞路99号301室”,看到后发现,哦,我要去找下一个路由器了,决定把这个消息发送给下一个路由器了,“下一跳”大概意思就是我下一次要跳到那个路由器去了。如果你某一天听到网络同学说xiayitiao,万不可理解为他被吓坏了,吓了一大跳。

6. 小结

   从浏览器输入url到页面展现,这本身就是一个很蛋疼的题目,我们做为前端开发,如果经验少一些,很容易对服务器啦,网络啦,了解的不多,但如果你不了解这些呢,答复起这道口试题必定很空洞,说白了就是你答复完了,很容易让口试官无感,以为你答复后根本无法给你加分。
  所以希望读完本专栏,可以让你对整体的http链条,其中的网络走向知识,哀求回的页面优化都有个更详细的认知。我相信,读完后,你的横向知识面一定会超出前端范畴的



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

王國慶

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表