这是我参与「第五届青训营 」伴学笔记创作活动的第 5 天
什么是 HTTP
- 超文本传输协议
- 应用层协议,基于 TCP
- 请求和响应
- 简单可扩展
- 无状态
什么是 HTTPS
HTTPS 是以安全为目标的 HTTP 通道,即 HTTP 下加入 SSL 层,HTTPS 的安全基础是 SSL
HTTP 和 HTTPS 区别
HTTP 是超文本传输协议,信息是明文传输;HTTPS 则是具有安全性的ssl加密传输协议。
HTTP 默认端口是 80,HTTPS 默认端口是 443
HTTP 是无状态的,HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全
HTTP 缓存比 HTTPS 高效
HTTPS 需要 CA 证书,安全性越高的证书费用越高
HTTPS 需要绑定 IP,不能在同一个 IP 下绑定多个域名
HTTPS 请求流程
- 客户端使用 HTTPS 访问服务器,则要求服务器建立 SSL 链接
- 服务器接收到客户端请求后,会将网站证书(包含公钥)发给客户端
- 服务器和客户端开始协商 `ssl 链接安全等级`,也就是加密等级
- 浏览器客户端通过双方协商的加密等级,通过网站的公钥加密会话,并传送给网站
- WEB 服务器通过私钥解密会话
- WEB 服务器通过公钥加密会话
HTTP 状态码
HTTP 状态码是服务器端返回给客户端的响应状态码,根据(HTTP)状态码我们就能知道服务器端想要给客户端表达的具体含义, HTTP 状态码可分为 5 大类:
- 1XX:消息状态码。
- 2XX:成功状态码。
- 3XX:重定向状态码。
- 4XX:客户端错误状态码。
- 5XX:服务端错误状态码。