在浏览器中输入URL后都会发生什么

这篇具有很好参考价值的文章主要介绍了在浏览器中输入URL后都会发生什么。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. 浏览器补全地址和DNS对域名进行解析;
    1>当搜索baidu.com,实际访问的是http://www.baidu.com,浏览器会补全地址。
    因为一个URL由协议、主机名、路径、搜索内容、哈希组成。
    2>DNS解析过程:客户机先插本地缓存,找不到再将域名发到DNS服务器,它先查它管理的区域,如果就查本地缓存,还找不到就发送给根域名DNS服务器。
    根域名解析请求域名的根域部分,把下一级域名信息的DNS服务器地址返回给客户机的DNS服务器地址。客户机DNS服务器利用根域名返回的DNS服务器地址一级一级查找DNS服务器地址。最终能在模板DNS服务器上找到相应的IP地址。
  2. 建立TCP连接(三次握手);
    第一次
    第一次握手:建立连接时,客户端发送syn包(seq=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。
    第二次
    第二次握手:服务器收到syn包,必须确认客户端的SYN(ack=j+1),同时自己也发送一个SYN包(seq=k),即SYN+ACK包,此时服务器进入SYN_RECV状态。

确认syn包都是回复ack以顺序号seq+1

第三次
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念。

  1. 发送HTTP请求;
    浏览器把请求包装成请求报文,如GET/HTTP/1.0,当然请求也可能是POST。
    头部信息:User-Agent Hos成对出现
    主体:请求头部和主体之间有一个回车换行。如果是get请求,则没有主体部分,post有请求主体。

  2. 服务器处理请求;
    返回数据,比如请求的资源,一般是html页面。

  3. 返回响应结果;
    返回给客户端状态码。如果有错误,直接显示在页面上。
    1XX被接收,继续处理
    2XX成功
    3XX:重定向错误
    4XX:如404,属于客户端错误。
    5XX:服务器错误状态,一般是编码错误

  4. 关闭TCP连接(四次挥手);
    对于一个已经建立的连接,TCP使用改进的四次挥手来释放连接(使用一个带有FIN附加标记的报文段)。TCP关闭连接的步骤如下:
    第一步,当主机A的应用程序通知TCP数据已经发送完毕时,TCP向主机B发送一个带有FIN附加标记的报文段(FIN表示英文finish)。
    第二步,主机B收到这个FIN报文段之后,并不立即用FIN报文段回复主机A,而是先向主机A发送一个确认序号ACK,同时通知自己相应的应用程序:对方要求关闭连接(先发送ACK的目的是为了防止在这段时间内,对方重传FIN报文段)。
    第三步,主机B的应用程序告诉TCP:我要彻底的关闭连接,TCP向主机A送一个FIN报文段。
    第四步,主机A收到这个FIN报文段后,向主机B发送一个ACK表示连接彻底释放。

  5. 浏览器解析HTML;
    浏览器通过解析HTML,生成DOM(文档对象模型 Document Object Model)树(是一种HTML元素的树形数据结构),解析CSS,生成CSS规则树,然后通过DOM树和CSS规则树生成渲染树。渲染树与DOM树不同,渲染树中并没有head、display为none等不必显示的节点。

  6. 浏览器布局渲染;
    把html解析完,并且加载脚本文件,执行样式等,显示前端文件效果。
    html解析->外部样式、脚本加载->外部样式执行->外部脚本执行->html继续解析->dom树构建完成->加载图片->页面加载完成文章来源地址https://www.toymoban.com/news/detail-577489.html

到了这里,关于在浏览器中输入URL后都会发生什么的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 从输入URL到浏览器显示页面的过程中都发生了什么?

    用户在浏览器中输入一个 url 或直接点开一个 url 后,就可以看到网页内容了。虽然可以直接显示,但在这背后却经过了非常复杂的操作,主要有五大过程:         ip 指的是网络为每一台电脑分配的一个地址。由于 ip 地址不容易被记住,所以有了域名,浏览器拿到域名后

    2024年02月11日
    浏览(52)
  • 在浏览器中输入地址之后发生了什么过程?

    当我们在浏览器地址栏中输入某个网址之后,虽然页面内容几乎瞬间就显示出来,但其中经历了很多个步骤。 1.域名解析 网络上各个计算机之间相互通信均是以其IP地址来识别的,而我们输入的网址仅仅是方便我们记忆而取的别名,计算机不能直接识别,所以就需要将输入的

    2024年02月12日
    浏览(38)
  • 浏览器输入url后执行的整个过程(详细解析)

    这个问题也是老生常谈了,更是经常被作为面试的压轴题出现。在此稍微全面一点记录下。 检查网页重定向 URL 重定向 (也称为 URL 转发 )是一种为页面、表单或者整个 Web 站点/应用提供多个 URL 地址的技术。 当实际资源(如单个页面、表单或者整个 Web 应用)被迁移到新的

    2024年02月03日
    浏览(78)
  • 前端学习之浏览器从输入URL到页面加载的全过程

    从输入URL到页面加载的主干流程如下: 1、浏览器的地址栏输入URL并按下回车。 2、浏览器查找当前URL的DNS缓存记录。 3、DNS解析URL对应的IP。 4、根据IP建立TCP连接(三次握手)。 5、HTTP发起请求。 6、服务器处理请求,浏览器接收HTTP响应。 7、渲染页面,构建DOM树。 8、关闭

    2023年04月23日
    浏览(52)
  • 在浏览器中输入URL到显示页面经历哪些过程,涉及到哪些协议?

    作为一个大学学过计算机网络的人,在工作后。。。几乎把TCP/IP模型和OSI模型忘得干干净净的了,重新根据百度词条,对浏览器地址解析做了粗略的总结,也当是给自己加深一下印象。 首先浏览器要将URL解析为IP地址,解析域名就要用到DNS协议,首先主机会查询DNS的缓存,如

    2024年02月09日
    浏览(57)
  • 程序部署到tomcat之后,在浏览器上输入URL报错404,该如何定位?

    目录 1.首先检查url是否正确 2.检查war包,查看部署之后的目录结构 3.查看tomcat日志 4.通过postman发请求 spring项目打包成war包再部署到tomcat上时,项目的路径要加上war包的名称,通过更改war包的名称,就可以更改访问路径。 格式为:协议://ip:端口号/war包名称/请求路径       

    2024年01月18日
    浏览(44)
  • 从浏览器输入url到页面加载(五)请求数据在网线中的故事

    前言 上一章我们说到了,为了确保连接通道已建立完成,进行 三次握手 的确认。但无论是请求页面,还是发送一个ajax请求,数据都是要达到服务器的,包括header头,body信息这些。一旦离开了客户端浏览器,再离开了客户端操作系统,就要开始 漫长的网线旅程 了。 目录 前

    2024年02月10日
    浏览(38)
  • 谷歌浏览器输入url地址后http自动转https问题解决方法

    谷歌浏览器输入“http + 域名”后自动变成 “https + 域名” 格式原因 安装配置了 SSL证书后,浏览器开启了 HSTS(HTTP Strict Transport Security)功能,它会告诉浏览器只能通过 https 访问,绝对禁止 http 方式,所以浏览器中输入http 后自动转成了 https 解决方法: 1、进入“chrome://net

    2024年02月11日
    浏览(57)
  • 从浏览器输入url到页面加载(六)前端必须了解的路由器和光纤小知识

    前言 上一章我们说到了 数据包 在网线中的故事,说到了 双绞线 ,还说到了 麻花 。这一章继续沿着这条线路往下走,说一些和cdn以及路由器相关,运营商以及光纤相关的小知识,前端同学应该了解一下的   目录 前言 1.  CDN和路由器有关系吗? 2. 你的电脑能直接上网吗?

    2024年02月09日
    浏览(53)
  • UniApp开发安卓以及H5实现页面级权限管理,避免用户浏览器直接输入url访问页面

    前言:uni-app如何像vue-router中的beforeEach一样实现跳转拦截功能呢? 为此uniapp官方提供了专门的API方法 uni.addInterceptor 举个栗子 我们发现底部有四个菜单分别是:首页、分类、购物车、我的;按常理来说首页和分类是不需要登陆就能查看的。另外两个则需要先登陆才能查看没登

    2024年01月16日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包