20170712
2017-07-12 本文已影响0人
zxpkconcom
在浏览器输入url会发生什么?
- 浏览器会查看缓存,如果有,检验是否新鲜,如果新鲜。直接提供给客户端,否则与服务器进行验证,检验新鲜的话,有两个http头进行控制,expires和cache-control:max-age=以秒为单位的最大时间
- 浏览器解析url获取协议端口主机path
- 浏览器组装一个http(get)的请求报文
- 浏览器获取主机i地址,其中包括,浏览器缓存,本地缓存,host文件,路由器缓存,ips dns 缓存,dns递归查询
5.打开一个socket建立tcp链接,开始三次握手 - tcp建立以后发送http请求
7.服务器接受请求并解析,将请求转发到服务程序,如虚拟机使用HTTP Host头部判断请求的服务程序
8.服务器检查http请求头是否包含缓存验证信息,如果验证缓存新鲜,返回304等对应的状态码
9.处理程序读取完整的请求病准备HTTP响应,可能需要查询数据库等操作
10.服务器兑响应报文通过TCP连接发送会浏览器
11.浏览器接受http响应,然后根据情况选择关闭tcp或者重用,tcp四次挥手
12.浏览器检查响应代码,比如200,404什么的 - 如果资源可缓存,就缓存
14.对相应进行解码,例如gzip压缩
15.根据资源类型判断如何处理,;比如html文档
16.解析html文档.构建dom树 ,下载资源,构造cssom树,执行js脚本,
17.显示页面
link与@import的区别
link最大限度支持并行下载,@import过多嵌套导致串行下载,出现FOUC