打开一个网站到底发生了什么

本文详细介绍了从用户在浏览器输入URL开始,到页面完全加载完毕的整个过程,包括DNS解析、HTTPS证书验证、服务器请求与响应、浏览器渲染等关键步骤。特别聚焦于HTTPS的安全特性,解释了证书链的验证流程,确保数据传输的安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章目录


在这里插入图片描述

  • 打开浏览器,在地址栏输出 URL
  • DNS 解析过程
    • 由于浏览器会缓存 DNS 记录一段时间,如果在浏览器中找到了 DNS 记录就可以访问指定的 IP
    • 如果浏览器中找不到 DNS 记录,会在系统中去寻找,比如 windows 的 hosts 文件中寻找 IP
    • 如果系统的 hosts 也找不到 DNS 记录,就会在路由器缓存中查找
    • 如果路由器缓存也找不到,就会递归搜索 DNS 服务器,这样最终拿到域名对应的 IP 地址
  • 向指定 IP 发送请求
    • 对于 https 而言,服务器会传给浏览器一个数字证书,其中包含了服务端公钥和被上层 CA 证书加密后的服务端公钥,当浏览器拿到数字证书之后通过证书链进行解密,如果最终寻找到最上层根证书,即可保证证书链完整就表示 https 请求是安全的,之后就可以通过客户端对称密钥加密传输了
    • 然后请求,如果之前浏览器有访问过并且登录过,浏览器会保存有该网站的 cookies 信息,然后通过浏览器中拿到 cookies 数据直接访问网站
  • 后台响应数据
    • 客户端请求依据接口访问服务器后台特定 controller 控制器,然后 controller 进行逻辑判断并返回数据给浏览器
  • 浏览器的渲染
    • 浏览器接收数据对资源进行加载,解析中生成 dom 树,然后对 dom 树进行可视化操作,渲染到屏幕上,同时执行 js
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

abcnull

您的打赏是我创作的动力之一

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值