互联网上的任意角落都存在通信内容被监听的风险。这是因为tcp簇协议的工作机制,世界上的互联网是互通的。监听某段线路只需要通过抓包工具抓取互联网上流动的数据包(帧),常用抓包工具Wireshark。
常用的http协议,通常是明文传递(被盗窃),无法证明报文的完整性(易被改),不验证通信者的身份(被伪装)。
https针对问题改进。https并不是新协议,是披着SSL协议外壳的Http。
通常http在通信时是直接和Tcp通信,而HTTPS则是通信时先由ssl和tcp通信再和http
15.客户端使用HTTPS方式与web服务器通信的步骤:
(1)客户使用HTTPS的URL访问web服务器,要求与web服务器建立SSL连接
(2)web服务器收到客户端请求后,将网站的证书信息(证书中包含公钥)传送一份给客户端
(3)客户端的浏览器与web服务器开始协商SSL连接的安全等级,也就是信息的加密等级
(4)客户端的浏览器根据双方同意的安全等级,建立会话秘钥,然后利用网站的公钥将会话秘钥加密,并传送给网站
(5)web服务器利用自己的私钥解密出会话秘钥
(6)web服务器利用会话秘钥加密与客户端之间的通信
!!不认识的双方交流,协议的或是任何代码的编程思想就是,你的身份被一个官方有威信的第三方开具证书证明。解决之道。
ssl 通信协议的加密认证
ca证书公开密钥的认证
加密解密运算是很消耗计算机内存,cpu的运算。
证书要钱
页面仅某些人可见--认证
基础点
http是用于客户端和服务端发送之间通信的协议,不保存状态,通过请求和响应的交换达成通信。请求uri定位资源,使用方法告诉自己命令意图,持久连接节省通信量。
状态码
1** 信息性状态码。 接收的请求正在处理
2** 成功状态码 请求正常处理完毕
3** 重定向状态码 需要进行附加操作以完成请求 301 (请求资源的uri永久移动提示请求更新新引用) 304 服务端资源没变,你继续用未过期的缓存
4** 客户端错误状态码 服务端无法处理请求 401 需要客户端发送认证信息(basic digest认证有质询响应有应用)|认证失败 403 服务器拒绝了你 412 Etag匹配不上 417 服务端满足不了客户端expect期望字段内容 405 服务端不支持该类请求方法(Allow字段这说明自己支持的)
5** 服务端错误状态码 服务端处理请求出错 500 服务端执行请求时出错 503 服务器暂不可用
HTTP各版本的区别
CDN 有哪些优化静态资源加载速度的机制?
首先CDN是什么呢?CDN的全称Content Delivery Network,)即内容分发。简而言之就是将静态资源文件(图片、视频、脚本等)缓存到距离用户最近位置的服务器上。因此用户在请求访问网站时,可以快速获取自己想要的内容。从而解决了跨运营商,跨地区,带宽小,CPU负载小所引起的响应速度慢等问题。然后CDN技术可实施性条件除了客户端还包括:1.给用户直接提供访问的站点资源,也就是所谓的缓存服务器;2.缓存服务器所要抓取的内容均来自于原始站点,统称为源站;3.用户的访问请求会通过DNS重定向技术指向距离用户较近的缓存服务器,从而抓取所需的内容返回给用户。最后CDN缓存加速的工作原理是:网站使用了CDN缓存加速后,用户发送请求访问,首先通过DNS重定向技术确认距离用户最近的CDN节点,并且将用户的请求指向此节点。如果该节点没有客户需要的内容结果,缓存服务器就会在源站点服务器中搜寻客户的需要的内容结果,找到后将结果保存到缓存服务器的本地,最后将用户请求所需的内容结果返回至用户端。保存是为了该用户或者不同用户第二次访问请求同样问题的结果,可以再很短的时间返回给客户结果,这样就加快了对用户端的响应速度。而且通过智能DNS解析后,用户访问同服务商的服务器,不管是用南方网络还是北方网络访问,都是相同的响应速度。这完全体现了CDN缓存加速的特性,给用户访问网站也带来了便捷的条件。
当用户访问已经加入CDN服务的网站时,首先通过DNS重定向技术确定最接近用户的最佳CDN节点, 同时将用户的请求指向该节点。具体的流程为: 用户在自己的浏览器中输入要访问的网站域名,浏览器向本地DNS请求对该域名的解析,本地DNS将请求发到网站的主DNS,主DNS根据一系列的策略,确定当时互联数据最适当的CDN节点,并将解析的结果(IP地址)发给用户,用户向给定的CDN节点请求相应网站的内容!
HTTP 缓存?
也可以通过meta标签管理缓存,但代理服务器和一些浏览器不支持
https://www.cnblogs.com/exhuasted/p/7814729.html
强缓存协商缓存
https://blog.csdn.net/weixin_34405557/article/details/89291849
http缓存命令取值详解
https://netsecurity.51cto.com/art/202001/609646.htm
输入一个url到页面生成经历了什么
DNS解析、TCP连接、发送HTTP请求、服务器处理请求并返回HTTP报文、浏览器解析渲染页面、连接结束
跨域原因和解决方案
离线包原理
XSS如何防御,交给前端做还是交给后端做,CSRF如何防御,同源策略解决了什么问题
https://blog.csdn.net/love_naive/article/details/108382122
前端性能优化是怎么做的
https://zhuanlan.zhihu.com/p/130888342