在浏览器中输入url到页面显示出来的过程发生了什么?
考点:
- dns解析(可做dns预取) cdn
- tcp连接 (3次握手) TCP/IP协议栈:应用层(应用层,表示层,会话层),传输层,网络层,数据链路层,物理层
- 发送https请求
浏览器对同域名下的TCP连接有5-7的限制(优化方法:域名分片,资源放在cdn服务器上)
http缓存:强缓存和协商缓存,expires和cache-control,etag和last-modefied。from-disk
一个域名建立一个tcp连接发送所有的http请求和响应
https:防止中间人攻击,使用对称和非对称加密,对传输内容进行加密传输,CA证书机构
- 有缓存的话,先从缓存读取
- 关闭tcp连接 (4次挥手)
- 网络知识
- 页面渲染过程(双树合并,layout,render树)
CSS放在头部,css是从右往左进行解析,减少匹配次数
JS放在底部,async和defer的区别,前者加载完立即执行,后者等dom加载完后执行
涉及到重绘和重排,重绘改变颜色,重排改变大小和位置,重排一定会引发重绘
相关知识点:
- 1.url的组成 协议:http https 域名+端口 虚拟目录 参数