从url输入到页面展示发生了什么?

基本概念

URL

URL (Uniform resource locator)统一资源定位符,对应协议(http,https,ftp等),域名,端口等,用于定位互联网上的资源。

HTTP

(HyperText Transfer Protocol ,超文本传输协议)

TCP/IP 协议族

层级 名称
应用层 HTTP FTP DNS等
传输层 TCP UDP
网络层 IP协议
链路层 硬件

以http为例,客户端在应用层发出一个http请求,在传输层把应用层的数据分割,并标记序号及端口号-->网络层增加MAC地址-->链路层-->服务器链路层接收到数据,按顺序向上层发送至应用层。

域名解析的流程

  1. 在浏览器中输入url后,浏览器解析域名,查询主机的ip地址
  • 浏览器缓存
  • 系统缓存(本地host文件)
  • 路由器缓存
  • ISP(服务商)DNS缓存
  • 根域名服务器查找ip

服务器处理

服务器(安装liunx,windows server2012等)
处理请求的应用 web server
web服务器(Apache Nginx 等)接受用户请求交给网站代码或接受请求反相代理到其他web服务器

网站处理流程

MVC( Model(模型) View(视图) Controller(控制器))
基本流程:注册路由-->创建控制器-->控制器从数据库获取数据-->在视图中展示数据-->发回用户

浏览器处理

  • 解析html
  • link标签,重新发送请求获取css
  • script标签,获取JS,并执行代码
  • img标签,获取图片资源
  • 根据HTML CSS计算得到渲染树,绘制,执行JS

你可能感兴趣的:(从url输入到页面展示发生了什么?)