用户打开浏览器,输入 baidu.com,页面展示百度首页,整个过程发生了什么

1 域名解析

  对于baidu.com的网址,浏览器需要查找baidu.com所在的服务器的ip地址,通过域名解析查看对应ip,通过域名并不能直接访问到主机,有一个域名解析的过程。

域名解析流程:

  • 查找浏览器是否有缓存的DNS记录
  • 查找电脑C盘的hosts文件查找是否有该域名和对应的ip地址
  • 查找路由器缓存的域名信息
  • 查找电信运营商的DNS缓存
  • 查找向根域名服务器查找域名对应的ip,把请求转发到下一级,直到找到对应的ip

2 web服务器

  常见web服务器有:Apache.Nginx、IIS、Lighttpd
  web服务器把访问需求转到百度公司网站

3 网站处理流程

  MVC 模型(model)-视图(view)-控制器(controller)

4 浏览器处理

  Html字符串被浏览器接收后被一句句读取解析

  • 解析到link标签后重新发送请求获取css
  • 解析到script标签后发送请求获取js,并执行代码
  • 解析到img标签后发送请求获取图片资源

绘制网页

  浏览器根据Html和css计算得到渲染树,绘制到屏幕上js会被执行
  百度把网站内容返回到用户,浏览器再把html字符串读取解析再进行渲染绘制在屏幕上

你可能感兴趣的:(用户打开浏览器,输入 baidu.com,页面展示百度首页,整个过程发生了什么)