输入一个url到浏览器页面展示都经历了哪些过程

从URL到浏览器显示页面的流程 一、URL解析 1、地址解析 浏览器会根据你的输入来判断该输入是一条合法的URL,还是需要被搜索的关键词。并且根据你输入的内容进行自动完成、字符编码等操作。 2、其他操作 目前大部分浏览器都会强制客户端使用HTTPS协议以保证信息传输的安全性。同时还会进行一些额外的操作,比如安全检查、访问限制等。 3、缓存检查 有时候博客上进行了更新,但是通过浏览器查看博客时,仍是更新前的博客,这是因为浏览器中缓存了之前的博客界面。 浏览器会先检测是否缓存了目标URL的页面,如果有且缓存未过期,则直接展示缓存页面,无需再向 阅读详情
在日常的浏览器访问过程中,我们肯定会访问n多页面,但是我们输入一个网址后是如何变成一个页面展示在我们面前,从一个url到页面的展示这个过程中,我们的浏览器都经历了一些什么?

步骤

→ 1- 输入网址
→ 2- 缓存解析
→ 3- 域名解析
→ 4- tcp连接,三次握手
→ 5- 服务器收到请求
→ 6- 页面渲染


一:输入网址

那肯定是输入你要访问的网站网址了,俗称url;

二:缓存解析

浏览器获取了这个url,当然就去解析了,它先去缓存当中看看有没有,从 浏览器缓存-系统缓存-路由器缓存 当中查看,如果有从缓存当中显示页面,然后没有那就进行步骤三;
缓存就是把你之前访问的web资源,比如一些js,css,图片什么的保存在你本机的内存或者磁盘当中。

(1) 在chrome浏览器中输入网址: chrome://chrome-urls/ chrome-urls是一个看到所有的Chrome支持的伪RUL,找到其中的chrome://appcache-internals/ 可以看见chrome的本地缓存地址:Instances in: C:\Users\User\AppData\Local\Google\Chrome\User Data\Default (0)

(2)在chrome中访问www.baidu.com/,打开开发者模式,不勾选 Disable cache

这里写图片描述

圈出来的部分显示了资源的来源: from disk cache : 将资源缓存到磁盘中,等待下次访问时不需要重新下载资源,而直接从磁盘中获取;
from memory cache :将资源缓存到内存中,等待下次访问时不需要重新下载资源,而直接从内存中获取;
可以看见资源的来源是缓存当中,从缓存当中获取了这些就可以直接显示在页面中,不需要发送http请求;

三: 域名解析

和步骤二一样,做一个访问新页面的操作juejin.im/timeline,同样打开开发者模式,,不勾选 Disable cache

这里写图片描述

可以发现它的来源再也不是: from disk cache 或者from memory cache ,即发送http请求。
那么在发送http请求前,浏览器做了什么?

在发送http之前,需要进行DNS解析即域名解析。
DNS解析:域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。解析后可以获取域名相应的IP地址

四:tcp连接,三次握手

在域名解析之后,浏览器向服务器发起了http请求,tcp连接,三次握手建立tcp连接。TCP协议是面向连接的,所以在传输数据前必须建立连接

这里写图片描述

(1)客户端向服务器发送连接请求报文;
(2)服务器端接受客户端发送的连接请求后后回复ACK报文,并为这次连接分配资源。
(3)客户端接收到ACK报文后也向服务器端发生ACK报文,并分配资源。

这样TCP连接就建立了。
在此之后,浏览器开始向服务器发送http请求,请求数据包。请求信息包含一个头部和一个请求体。

五:服务器收到请求

服务器收到浏览器发送的请求信息,返回一个响应头和一个响应体。

六:页面渲染

浏览器收到服务器发送的响应头和响应体,进行客户端渲染,生成Dom树、解析css样式、js交互。

面试突击:输入URL之后会执行什么流程? 在浏览器中输入 URL 之后,它会执行以下几个流程:执行 DNS 域名解析;封装 HTTP 请求数据包;封装 TCP 请求数据包;建立 TCP 连接(3 次握手);参数从客户端传递到服务器端;服务器端得到客户端参数之后,进行相应的业务处理,再将结果封装成 HTTP 包,返回给客户端;服务器端和客户端的交互完成,断开 TCP 连接(4 次挥手);浏览器通过自身执行引擎,渲染并展示最终结果给用户。... 阅读详情

相关推荐

单相变换器的二次纹波分析

1. 单相PWM整流器的二次纹波产生原因   单相变换器的二次纹波产生的原因是功率含有二次脉动分量。设电网电压 us=Vmsin(wt),电网电流IL=Imsin(wt−θ)I_L=I_msin(wt-\theta)IL​=Im​sin(wt−θ)。其中w是电网电压披绿,θ\thetaθ是电流之后电压相位。保证输入功率和输出功率相等,就要保证两者的直流量和交流量对应相等。   uDu_DuD​为 PWM 整流器直流电容电压平均值,IoI_oIo​ 为负载电流平均值 ,uDC^\widehat {u_{DC}

qq_38847810的博客 4973

浏览器输入url后经历的过程(详细)

页面加载流程:DNS查询TCP连接发送HTTP请求服务器处理HTTP请求并返回HTTP报文浏览器解析并render页面HTTP连接断开浏览器查看浏览器缓存-->系统缓存-->查找本地host文件-->本地DNS服务器缓存,如果缓存中有,则直接在屏幕中显示页面内容。若没有,则进行DNS解析,获取相应的IP地址,本地域名服务器会向 根域名服务器发送一个请求。如果根域名服务器也不存在该域名时,本地域名会向顶级域名服务器(TLD)发送一个请求,即根域名服务器-->顶级域名服务器-->权威域名服务器依次类推下去。..

Jennifer0204的博客 5308

SAP 批量处理分包事后调整:BAPI_GOODSMVT_CREATE 关键参数与避坑指南

本文详细解析了SAP系统中使用BAPI_GOODSMVT_CREATE进行分包事后批量调整的关键参数配置与常见错误排查。重点介绍了GOODSMVT_CODE设置为'07'的必要性、GOODSMVT_ITEM结构体的正确配置方法,以及如何避免M7384、M7386等常见错误,帮助用户高效处理分包业务中的数量调整问题。

weixin_29276847的博客 567

浏览器输入url到页面展示出来的全过程

基本流程: 1、用户在浏览器中输入url地址 2、浏览器解析域名得到服务器ip地址 浏览器会首先从缓存中找是否存在域名,如果存在就直接取出对应的ip地址,如果没有就开启一个DNS域名解析器。DNS域名解析器会首先访问顶级域名服务器,将对应的ip发给客户端;然后访问根域名解析器,将对应的ip发给客户端;最后访问本地域名服务器,得到最终的ip地址。 3、TCP三次握手建立客户端和服务器的连接 因为HTTP是基于TCP的可靠传输,所以在发送http数据报之前,需要先进行TCP的三次握手建立连接。三次握手

cute_ming的博客 2万+

Dify + mem0插件实战:如何让AI记住你的饮食习惯(附完整代码)

本文通过Dify平台与mem0插件实战,详细演示了如何为AI助手构建长期记忆系统,使其能记住并理解用户的复杂饮食习惯(如过敏源、饮食偏好)。文章提供了完整的工作流配置与Python代码示例,帮助开发者实现跨会话的个性化饮食建议,解决AI对话中的“健忘”问题。

lg888的博客 1095

Mathtype公式下标深度调整技巧:解决固定行距下的显示不全问题

本文针对在Word等文档中设置固定行距时,Mathtype公式下标显示不全的问题,提供了专业解决方案。核心在于调整Mathtype软件内部的“下标深度”参数,通过修改单个公式或批量格式化全文,使公式完美适配固定行距,确保下标清晰完整,且不影响文档整体排版。

pepsi的博客 1500

从浏览器输入url到页面展示都经历了那些过程

一、url输入 当我们在浏览器中输入网址的时候,浏览器已经开始在智能的匹配的可能的url了。他会在历史记录、收藏书签等网址中匹配可能是输入字符串所对应的的url,然后给出智能提示,用来补全url。对于谷歌浏览器,他甚至可以在缓存中将页面直接显示出来。 二、DNS解析 DNS:域名系统。实现了网址到ip地址的转换。 什么是DNS:DNS是因特网上作为域名和ip地址相互映射的分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器读取的ip地址。 三、TCP链接 tcp三次握手 四、发送http请求

qq_41835629的博客 524

数字电子时钟——数字电路课设

本文设计了一种基于中小规模集成电路的数字电子时钟系统,采用模块化设计方法,包含晶振电路(CD4060+D触发器)、计时电路(74HC161计数器)、数码管驱动(CD4511)和整点报时功能。系统实现了60进制秒/分、24进制小时、7进制星期的计时显示,支持手动校时功能,并具备整点报时特性(59分54-58秒5次500Hz低音,59秒1次1000Hz高音)。通过分模块调试与整合,最终实物电路满足设计要求,获得优秀评价。

来自FZU——电子科学与技术专业 1489

浏览器从输入 Url 到展示出页面都经历了哪些过程

文章写于 2017 年,首发于微信公众号:字节流动 输入域名 在浏览器输入网址时,浏览器会根据历史记录、书签智能匹配补全域名或者 url 。 例如 chrome 浏览器,甚至会根据匹配结果直接把网页加载出来。 解析域名 请求发起时,浏览器首先解析域名,一般会首先查看本地的 hosts 文件,查找相关域名与 ip 地址的对应规则,若查找到的话,就直接使用 hosts 文件里面的 ip 地址。 若...

字节流动 6378

Bootloader Design of PIC18 series MCU

注意:下列描述是在PIC单片机上启用Bootloader的一个相关知识的近似完备集。所有需要了解的,与bootloader与用户态程序交互的理论知识都已给出。包含内存组织,跳转,中断等必备功能的描述。

含光左卫的工作笔记集 1267

Python入门之机器学习(非常详细)篇幅拉满,一般人看不完!

什么是机器学习?监督学习 supervised learning;非监督学习 unsupervised learning;半监督学习 semi-supervised learning;强化学习 reinforcement learning;监督学习是不断向计算机提供数据(特征),并告诉计算机对应的值(标签),最后通过大量的数据,让计算机自己学会判断和识别。例如Google Photo,你在APP中输入狗,这时就会弹出与狗相关的图片,这背后使用的算法就是监督学习。

xiaolinyui的博客 2万+

从输入一个url到浏览器页面展示都经历了哪些过程

面试的时候有些面试官会问这个问题,可按如下流程作答: 1、首先,在浏览器地址栏中输入url 2、浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容。若没有,则跳到第三步操作。 3、在发送http请求前,需要域名解析(DNS解析),解析获取相应的IP地址。 4、浏览器向服务器发起tcp连接,与浏览器建立tcp三次握手。 5、握手成功后,浏览器向服务器发送...

柏灿的博客 6119

装上大模型翅膀,程序员入职新公司如何快速上手代码(老员工如何选择大模型编程如虎添翼)

入职新公司,尤其是行业知识不懂的,面对前人堆积的屎山代码,各种文档又缺少的,有些技术自己又不懂的,如何快速上手代码,特别是借助AI大模型事半功倍的上手项目代码。进入新公司,我做的第一件事就是收集情报。我主动向同事们索要项目的相关资料,包括项目介绍文档、功能说明文档和业务流程图等。通过仔细阅读这些资料,可以对项目的背景和架构有了初步的了解。同时要逮住机会就向同事们请教项目的迭代历程和技术选型背后的考量。有时他们三言二语,可以为自己节省很多探索时间。在了解了项目的基本情况后,可以开始深入探究项目的业务流程。

大模型大数据攻城狮的专栏 1131

浏览器从输入URL到页面展示这个过程中都经历了什么

1. 确认双方的收发能力。TCP建立连接之前,需要确认客户端和浏览器双方的收包和发包的能力,最开始的一次握手,客户端发送网络包,服务端收到了,这样服务端就能得出结论:客户端的发送能力,服务端的接收能力是正常的。对于四次挥手,因为TCP是全双工通信,在主动关闭方发送FIN包后,接收端可能还要发送数据,不能立即关闭服务器端到客户端的数据通道,所以也就不能将服务器端的FIN包和对客户端的ACK包合并发送,只能先确认ACK,然后服务器等到无需发送数据时再发送FIN包,所以四次挥手时必须是四次数据包的交互。

m0_66706006的博客 362

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

请说一下浏览器从输入URL 到页面展示这个过程中都经历了什么?你能答出来吗?

请说一下浏览器从输入URL 到页面展示这个过程中都经历了什么?你能答出来吗?

大唐雨夜的博客 797

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

从输入一个url到浏览器页面展示都经历了哪些过程?

[HTTP请求阶段:向服务器发送请求] 1.浏览器首先向DNS域名解析服务器发送请求 2.DNS反解析:根据浏览器请求地址中的域名,到DNS服务器找到对应的服务器外网IP地址 3.通过找到的外网IP,向对应的服务器发送请求(首先访问的是服务器的web站点管理工具:准确来说是我们先基于工具在服务器创建很多服务,当有客户端访问的时候,服务器会匹配出具体是哪个请求哪个服务) 4.通过url地址中携带的...

weixin_34399060的博客 420

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

从输入URL到页面展示过程

从输入URL到页面展示过程

php_martin的博客 288

2020-05-17

阅读文章 从浏览器输入url到页面展示过程中间经历了什么

weixin_47827156的博客 112

从输入 URL 到页面展示,背后发生了什么?

输入 URL ➡️ DNS解析 ➡️ 建立TCP连接 ➡️ 发送HTTP请求 ➡️ 服务器处理请求⬇️ ⬆️浏览器渲染页面 ⬅️ 返回HTTP响应整个过程涉及网络协议、传输控制、安全加密、浏览器渲染等多个方面。如果你想了解某一步更深入的细节,随时问我!😎。

m0_69529796的博客 1290
上一篇: [LeetCode] 692.Top K Frequent Words之TreeMap与HashMap
下一篇: ping 命令的作用和原理
Lana啦啦啦
博客等级 码龄9年 5粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值