从URL输入到页面展现的过程

URL指的就是我们常说的网址,从URL到页面展现过程如下

一、输入网址
二、域名解析
  • 域名是为了方便记忆而专门建立的一套地址转换系统,域名解析就是域名到ip地址的转换过程,解析的工作由DNS服务器完成。
    • DNS查找过程如下:
      浏览器缓存—浏览器会缓存DNS记录一段时间
      系统缓存 —从 Hosts 文件查找是否有该域名和对应 IP。
      路由器缓存—一般路由器也会缓存域名信息。
      ISP DNS 缓存— 比如到电信的 DNS 上查找缓存。
      如果都没有找到,则向根域名服务器查找域名对应 IP,根域名服务器把请求转发到下一级,直到找到 IP
三、建立TCP连接
  • 常见的 web服务器有 Apache、Nginx、IIS、Lighttpd
  • 浏览器给web服务器发送一个HTTP请求
  • 访问网站的永久重定向响应
  • 浏览器跟踪重定向地址
四、服务器相应http请求
  • 请求处理会读取也可能更新一些数据,并将数据存储在服务器上,然后需求处理会生成一个HTML响应。接着服务器发回一个HTML响应
  • web server软件接受处理请求,交给网站代码,运行得到结果。
    具体处理流程分两类:
    1、静态页面(返回的内容是固定的),服务器在收到请求后,直接查看资源,并发送响应。
    2、动态页面(返回的内容是不固定的),通常用MVC模型
    MVC架构:模型(Model)-视图(View)-控制器(Controller)
    模型:查找数据,将数据发送给控制器,为控制器提供数据接口;
    视图:html模板
    控制器:将数据放在相应的视图模板里面,组合视图成HTML页面。
    HTTP响应报文也是由三部分组成: 状态码, 响应报头和响应报文
五、浏览器渲染页面
  • 浏览器没有完整接受全部的HTML文档时,他就已经开始显示这个页面了,并开始获取CSS和JS外部资源。
  • 具体是首先浏览器解析HTML文件构建DOM树,然后解析CSS文件构建渲染树,等到渲染树构建完成后,浏览器开始布局渲染树并将其绘制到屏幕上。
  • 页面显示完成后会持续与服务器保持联系。

本文章著作权归饥人谷—和饥人谷所有,转载须说明来源

你可能感兴趣的:(从URL输入到页面展现的过程)