杂技 || 浏览器输入网址后发生了什么?

在浏览器输入网址,按下回车后,首先浏览器会做域名解析,获取目标主机的ip地址。主要有以下几个步骤:

  1. 浏览器搜索自身的DNS缓存,如果没找到,转2;
  2. 搜索操作系统自身DNS缓存,如果没找到,转3;
  3. 读取本地的hosts文件,查找有无域名对应解析,如果没找到,转4;
  4. 浏览器发起一个DNS的一个系统调用:向本地域名解析服务器(由宽带服务商提供),发起一个域名解析请求。
  • 运营商的DNS服务器首先查看自身缓有无对应条目(没有过期,则解析成功),如果不成功;
  • 宽带运营商代替浏览器发起一个迭代DNS解析的请求
    www.imooc.com的IP地址为例:
    DNS迭代解析

    经过八个步骤,最终查询到域名的IP地址,并将其返回给浏览器;
  1. 浏览器获得域名对应的IP地址后,发起与服务器的TCP连接请求(完成“三次握手”);
  2. 建立TCP连接后,由浏览器向服务器发送请求;
  3. 服务器接收客户端的请求,根据路径参数,将经过后台处理的数据,发送回浏览器;
  4. 浏览器获得完整的HTML页面代码,在解析、渲染页面时,其中的JS、CSS和图片等静态资源也是一个个HTTP请求,经过前面7个步骤获取;
  5. 浏览器根据获取到的资源对页面进行最后的渲染,呈现给用户。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容