浏览器中输入一个网址后全部的执行过程

过程包括:

域名解析->建立TCP连接(三次握手)->发起http请求->服务器响应http请求,浏览器得到html代码->浏览器解析html代码,并请求html代码中的资源->浏览器对页面进行渲染呈现给用户

域名解析

  1. 浏览器先检查自身缓存中有没有被解析过的这个域名对应的ip地址,如果有且没有过期,则解析到此结束
  2. 如果浏览器自身的缓存中没有找到对应的条目,那么浏览器会搜索操作系统的DNS缓存,,如果找到且没有过期则停止搜索解析到此结束
  3. 如果操作系统的DNS缓存也没有找到,那么就尝试读取hosts文件(位于C:\Windows\Systems32\drivers\etc),查看里面有没有该域名对应的IP地址,如果有,则解析成功
  4. 如果还没有命中,那么就会真正的请求本地域名服务器(DNS)来解析这个域名(通过的是UDP协议的53端口发起请求),服务器会先查询自己的缓存,寻找对应的IP地址,如果找到且没有过期,解析成功,否则本地的DNS服务器就会向根DNS服务器发起请求进行查询。根DNS服务器上是没有记录哪个域名和IP的对应关系,它会告诉本地的DNS服务器可以到哪个域服务器上进行查询,并告诉这个域服务器的地址,这个过程是一个迭代的过程。本地DNS服务器拿到域名对应的IP地址,并返回给操作系统内核,操作系统又把结果返回给浏览器,至此浏览器才拿到域名对应的IP地址

建立TCP请求

拿到域名对应的IP地址后,就会建立TCP三次握手

发起http请求

HTTP请求报文的方法是get方式,如果浏览器存储了该域名下的Cookies,那么会把Cookies放入HTTP请求头里发送给服务器

服务器响应HTTP请求,浏览器得到HTML代码

服务器端WEB程序收到http请求后,就开始处理该请求,处理之后就返回给浏览器html文件

浏览器解析HTML代码,并请求HTML代码中的资源

浏览器对页面进行渲染呈现给用户

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值