商丘做网站,商丘网站优化,商丘网络推广,商丘网络公司
当前位置:首页 > 新闻资讯 > 建站经验 >

从输入 URL 到页面加载完成,这一过程是如何完成的?

发表日期:2018-01-14 19:51聚圣源浏览次数: 本文关键词:从,输入,URL,到,页面,加载,完成,这一,过程,是,

  在本文中,我将简单阐述一下“从输入 URL 到页面加载完成的整个过程”。作为互联网从业者,不管你属于何种职位,都应该有所了解。

  

从输入 URL 到页面加载完成,这一过程是如何完成的?

 

  操作的过程很简单:打开浏览器,在地址栏中键盘输入www.baidu.com,回车,浏览网页….

  地址栏输入www.baidu.com

  当你按输入www.baidu.com,浏览器接收到这个消息之后,会触发自动完成机制。浏览器根据自己的算法识别出你要访问的URL。

  按下回车键

  此时,回车键的电流回路通过电容器间接地闭合,使得少量的电流进入了键盘的主逻辑电路系统中。逻辑电路系统会扫描每个按键的状态,对于按键开关的电位弹跳变化进行解析,并将其转化为键盘码值。键盘控制器在得到码值之后,将进行编码。编码后,键码值将储存在寄存器内。键盘的USB控制器会查询到这个键码值,然后将键码值转换为一个数据包。之后,此数据包将通过键盘传递给计算机,计算机把数据包进行解码。最后,解码后的按键码值传输到操作系统的硬件层。

  解析URL

  浏览器通过URL可以知道将要使用HTTP协议,和请求资源的主页。

  浏览器会将地址栏中输入的文字传给默认的搜索引擎。把文字传递给搜索引擎的时候,URL会带有特定的一串字符,用来告诉搜索引擎这次搜索来自某个浏览器。

  Unicode(规范字符集)编码转换。如果有非ASCII的字符,将其进行Unicode编码转换。

  检查HSTS列表

  浏览器检查自带的“HSTS(HTTP严格传输安全)”列表,这个列表里包含了那些只使用HTTPS进行连接的网站

  DNS查询与解析

  浏览器检查域名是否在缓存当中。

  如果缓存中没有,就调用库函数进行查询。库函数在进行DNS解析之前,检查域名是否在本地 Hosts 里。

  如果域名在缓存和Hosts中都没有,库函数会向 DNS 服务器发送一条 DNS 查询请求。

  查询本地的DNS服务器。

  首先查询地址解析协议(ARP)的缓存,如果缓存命中,则返回结果:目标 IP = MAC地址。如果缓存没有命中,就看看目标 IP 地址是不是在本地路由表中的某个子网内,并使用相关接口。然后查询选择的网络接口的MAC地址。

  发送ARP请求,路由器或其他硬件会返回结果(结果中包含默认网关的IP地址)。

  通过TCP/UDP协议向DNS服务器发送相应请求。如果本地DNS服务器没有找到结果,将会逐层查询,直到结果(目标服务器的IP地址)返回。

  使用套接字

  浏览器得到了目标服务器的 IP 地址,以及 URL 中给出来端口号(http默认端口号是80端口)后,浏览器调用库函数socket。这个请求将被封装,目标端口会被加入头部。在网络层会再加入一个IP头部,里面包含了目标服务器的IP地址以及本机的IP地址。接下来继续封装,将本地内置网卡的MAC地址和本地路由器的MAC地址封装进去。此时封装包已经准备就绪。

  接下来,封装包会从本地计算机出发,经过本地网络,再通过调制解调器把数字信号转换成模拟信号。在传输线路的另一端,另一个调制解调器把模拟信号转换回数字信号,交由下一网络节点进行处理。最终封包会到达目标服务器。

  发送和接收的过程在TCP连接期间会发送很多次(三次握手):客户端将封包发送给服务端,并建立连接设置初始的序列号;服务端收到封包后做相应处理,并且向客户端表明自己接受到了第一个封包;客户端再次发送一个封包来确认这次连接。这就是建立连接三次握手的过程。

  TLS握手

  客户端发送相应消息给服务端,表明可用的加密算法以及压缩算法。

  服务端返回给客户端一个消息,包含了TLS版本,以及自己使用的加密算法和压缩算法等。

  客户端验证服务端发送的信息是否可用,如果可用,就生成一段加密的随机数返给服务端。

  服务端对这段密文进行解密,并生成自己的主密钥。

  接下来整个会话会进行加密,传输http的内容。

  HTTP协议

  浏览器向服务器发送请求头,请求头内容包括:请求数据方式,http版本号,域名等头部信息。接下来,服务器端返回一个响应码,表明这次请求的状态。浏览器会从自己的缓存中取出想要的内容,在解析完 HTML 之后,浏览器会重复上面的过程,直到HTML页面引入的所有资源(图片,CSS,JS等等)全部都获取完毕。

  浏览器

  当服务器提供了资源之后(HTML,CSS,JS,图片等),浏览器会执行下面的操作:

  HTML解析。HTML解析器的主要工作是对HTML文档进行解析,解析出HTML的内容。

  CSS解析。分析CSS文件内容以及属性值,将每个CSS文件都被解析成一个样式表对象。

  页面渲染。通过一些列计算并呈现DOM树,过程就是测量-排版-绘制页面。在渲染过程中,对图形的渲染处理会使用图形处理器GPU。

  后期渲染

  渲染结束后,浏览器根据时间机制运行JavaScript代码(比如动画)或与用户交互。类似Flash和Java的插件也会运行,这些脚本也可能改变网页的内容和布局,并产生又一轮渲染与绘制。

  相关术语理解:

  Unicode。Unicode是计算机科学领域里的一项业界标准,包括字符集、编码方案。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

  HSTS。HTTP Strict Transport Security,国际互联网工程组织IETF正在推行一的种新的Web安全协议。它作用是强制客户端(如浏览器)使用HTTPS与服务器创建连接。

  DNS服务器。Domain Name Server,域名服务器。是进行域名和与之相对应的IP地址转换的服务器。

  Hosts。Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。

  ARP。地址解析协议。是根据IP地址获取物理地址的一个TCP/IP协议。

  MAC地址。称为物理地址、硬件地址,用来定义网络设备的位置。

  套接字。源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。用于标识客户端请求的服务器。一般用socket函数创建。

  TLS。安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性。

  至此,一个完整的从输入 URL 到页面加载完成的过程就走完了。你学会了吗?

  作者:流年,互联网产品设计师,4年互联网产品设计经验。

  本文由 @流年 原创发布。未经许可,禁止转载。

  题图由作者提供

如没特殊注明,文章均来自网络! 转载请注明来自:http://www.jushengyuan.com.cn/news/jzjy/9845.html

网站设计案例推荐

热门文章

站长工具综合查询里面SSL证书不...

SSL证书不安全是怎么回事?但是点进去这个提示后,显示的是别人的tdk是不是被劫持或者被黑了?...

日期:2018-03-27 浏览次数:1881

简洁而实用的版权信息可增色网...

打开网站,人们自然会从上往下浏览,首先映入眼帘的一定是BANNER主视觉,然后是网站主体内容部分。相比较而言,注意到网站底部版权信息的浏览者确实不多,但这并说明网站版权信...

日期:2018-03-05 浏览次数:1873

网站设计需要注意的3点问题...

对于网站设计来讲会受到很多因素的影响,而且不同类型的网站,在设计时需要体现的元素也不一样,比如说对于一个企业网站更想体现出品牌以及产品的特点,主要是对产品、企业信...

日期:2018-02-12 浏览次数:1803

企业网站为什么要改版 改版选择...

网站改版,是每个建站企业必须面临的工作。相信也有不少站长问,已经做好的企业网站,为何还要大费周章重新进行改版设计呢?下面小编就来给大家说说,企业究竟为什么要改变,并...

日期:2018-03-26 浏览次数:1332

永城网站制作:模板建站不可不...

随着互联网建站尤其是自助建站热潮不断高涨,建站行业涌现出越来越多的自助建站平台,这些平台普遍都提供网站模板可选。...

日期:2018-04-30 浏览次数:931

相关文章

小说网站从建立到盈利全解析(...

从2007年做站,刚好十年了。时间过得真快。因为自己是兼职做站,所以一直断断续续,也没有什么大的成绩。做过地方论坛,电影站,股票站,文章站,小说站等,能尝试的都尝试了。...

日期:2018-01-19 浏览次数:78

从RDBMS到NoSQL的系统架构演化历程...

互联网时代背景下大机遇,为什么用nosql 1 单机MySQL的美好年代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。 在那个时候,更多的都是静态网页,动态交...

日期:2018-01-19 浏览次数:67

短网址(short URL)系统的原理及其...

背景 提供一个短址服务 你有没有发现,我们的任务中出现长 URL 就会比较麻烦?如果有一个短址生成器就好了。虽然市面上有很多,但是我们可以重复发明一个轮子,利用这个机会尝试...

日期:2018-01-19 浏览次数:68

故障排查 从错误码406说起...

背景 前一段时间,我突然接到运营的同事通报,沪江的一位老师在国外登录不上了沪江帐号。这本来是很普通的故障,但是在排查问题过程并不简单,我们意外获得了不少收获,在这里...

日期:2018-01-19 浏览次数:90

模板网站的选择,究竟该何去何...

互联网时代,形形色色、数量众多的网站模板层出不穷,面对着这些五颜六色的网站模板,我们看花了眼,经常不知道究竟该选哪一个好!但是,不论是对于企业还是个人,给网站选择一...

日期:2018-01-14 浏览次数:67

随机推荐

百度站长网站logo审核示例以及个...

如何利用情感化元素提升内容传...

企业或者个人自己建网站,需要...

您的网站alt图片标签做对了吗?...

美国主机和香港主机的对比分析...

史上最全网站建设备案和不备案...