资讯专栏INFORMATION COLUMN

从输入URL到页面加载到底发生了什么

wuyumin / 1277人阅读

摘要:当你在浏览器中输入一个地址时,例如,其实不是百度网站真正意义上的地址。结语以上就是我对输入到页面加载的过程的一个简单理解。如有不对或有更好的理解,可以留言评论,不胜感激。

很多初学网络或者前端的初学者大多会有这样一个疑问:从输入URL到页面加载完成到底发生了什么?
总的来说,这个过程分为下面几个步骤:
1.DNS解析
2.与服务器建立连接
3.服务器处理并返回http报文
4.浏览器解析渲染页面

过程 DNS解析

DNS解析的过程就是寻找哪台机器上有你需要资源的过程。当你在浏览器中输入一个地址时,例如www.baidu.com,其实不是百度网站真正意义上的地址。互联网上每一台计算机的唯一标识是它的IP地址,但是IP地址并不方便记忆。用户更喜欢用方便记忆的网址去寻找互联网上的其它计算机,也就是上面提到的百度的网址。所以DNS解析实际上充当了一个翻译的角色,实现了网址到IP地址的转换。

而DNS解析通常会经过以下这几个过程:
1.浏览器缓存 - 浏览器缓存DNS记录一段时间
2.系统缓存 - 从Hosts文件查找是否有该域名和对应IP
3.路由器缓存 - 一般路由器也会缓存域名信息
4.ISP DNS缓存 - 到电信的DNS查找缓存
5.都没有找到,则向根域名服务器查找域名对应IP,根域名服务器把请求转发到下一级查找IP

www.baidu.com查找顺序是:
根域名服务器(.)-> .com -> .baidu.com -> www.baidu.com

建立连接

知道了服务器的IP地址后,就可以与服务器建立连接。
建立连接需要三个过程(三次握手):
1.主机向服务器发送一个建立连接的请求

2.服务器接到请求后发送同意连接的信号

3.主机接到同意连接的信号后,再次向服务器发送了确认信号

服务器处理请求

1.浏览器根据 URL 内容生成 HTTP 请求,请求中包含请求文件的位置、请求文件的方式等等

2.服务器接到请求后,会根据 HTTP 请求中的内容来决定如何获取相应的 HTML 文件

3.服务器将得到的 HTML 文件发送给浏览器

浏览器解析渲染页面

在执行 HTML 中代码时,根据需要,浏览器会继续请求图片、CSS、JavsScript等文件,过程同请求 HTML 。

结语

以上就是我对输入URL到页面加载的过程的一个简单理解。如有不对或有更好的理解,可以留言评论,不胜感激。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/52195.html

相关文章

  • 地址栏输入URL之后发生哪些事情

    摘要:此时树,树建好,并渲染完成异步请求开始若有断开每个长连接都会有一定时限,当请求完成之后,断开连接上面就是整个请求淘宝页面到所有数据同步异步接收完成并渲染的整个过程。 地址栏输入URL之后到底发生了哪些事情? 这个问题应该是前端面试中被问概率较大的知识点,综合考察了面试者对于浏览器,计算机网络,HTTP协议,服务器等的基础。本人学生党一枚,近期找工作的过程中也被问了两次,之前回答都是参考...

    myshell 评论0 收藏0
  • 地址栏输入URL之后发生哪些事情

    摘要:此时树,树建好,并渲染完成异步请求开始若有断开每个长连接都会有一定时限,当请求完成之后,断开连接上面就是整个请求淘宝页面到所有数据同步异步接收完成并渲染的整个过程。 地址栏输入URL之后到底发生了哪些事情? 这个问题应该是前端面试中被问概率较大的知识点,综合考察了面试者对于浏览器,计算机网络,HTTP协议,服务器等的基础。本人学生党一枚,近期找工作的过程中也被问了两次,之前回答都是参考...

    张率功 评论0 收藏0
  • 地址栏输入URL之后发生哪些事情

    摘要:此时树,树建好,并渲染完成异步请求开始若有断开每个长连接都会有一定时限,当请求完成之后,断开连接上面就是整个请求淘宝页面到所有数据同步异步接收完成并渲染的整个过程。 地址栏输入URL之后到底发生了哪些事情? 这个问题应该是前端面试中被问概率较大的知识点,综合考察了面试者对于浏览器,计算机网络,HTTP协议,服务器等的基础。本人学生党一枚,近期找工作的过程中也被问了两次,之前回答都是参考...

    calx 评论0 收藏0
  • 地址栏输入URL之后发生哪些事情

    摘要:此时树,树建好,并渲染完成异步请求开始若有断开每个长连接都会有一定时限,当请求完成之后,断开连接上面就是整个请求淘宝页面到所有数据同步异步接收完成并渲染的整个过程。 地址栏输入URL之后到底发生了哪些事情? 这个问题应该是前端面试中被问概率较大的知识点,综合考察了面试者对于浏览器,计算机网络,HTTP协议,服务器等的基础。本人学生党一枚,近期找工作的过程中也被问了两次,之前回答都是参考...

    RebeccaZhong 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<