从浏览器地址栏输入url到页面显示的过程

本文详细阐述了从用户在浏览器输入URL到页面显示的整个过程,包括:浏览器缓存检查、URL解析与域名解析、TCP连接建立、HTTP请求与响应、页面渲染等步骤,深入解析了HTTP状态码和TCP的三次握手、四次挥手。
摘要由CSDN通过智能技术生成

1、输入地址(回车前)

当我们开始在浏览器中输入网址的时候,浏览器可能会做一些预处理,已经在智能的匹配可能得 url 了,他会从历史记录,书签等地方,找到已经输入的字符串可能对应的URL,来预估所输入字符对应的网站,然后给出智能提示,比如输入了「ba」,根据之前的历史发现 90% 的概率会访问「www.baidu.com 」,
因此就会在输入回车前就马上开始建立 TCP 链接了。对于 Chrome这种变态的浏览器,他甚至会直接从缓存中把网页渲染出来,就是说,你还没有按下「回车」键,页面就已经出来了;

2、浏览器查看缓存(回车后)

2.1如果资源未缓存,发起新的http请求;
2.2如果已缓存,检验是否足够”新鲜”,足够”新鲜”直接提供给客户端,否则发送http请求与服务器进行验证。
检验”新鲜”通常有两个HTTP头进行控制Expires和Cache-Control:
HTTP1.0提供Expires,值为一个绝对时间表示缓存”新鲜”日期;
HTTP1.1增加了Cache-Control: max-age=,值为以秒为单位的最大”新鲜”时间;
PS:关于浏览器缓存可参考:
https://blog.csdn.net/LANNY8588/article/details/85054338
https://www.sohu.com/a/260358906_658302
https://imweb.io/topic/5795dcb6fb312541492eda8c
https://imweb.io/topic/55c6f9bac222e3af6ce235b9

3、URL解析/域名解析

3.1完整的URL由这几部分构成:协议、网络地址、资源路径、文件名、动态参数,
URL完整格式为:协议://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志
例如:https://www.zhihu.com/question/55998388/answer/166987812
协议部分:https
网络地址:www.zhihu.com(依次为 子/三级域名.二级域名.顶/一级域名)
资源路径:/question/55998388/answe

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值