HTTP 与 HTTPS | 青训营笔记

82 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 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 请求流程

  1. 客户端使用 HTTPS 访问服务器,则要求服务器建立 SSL 链接
  2. 服务器接收到客户端请求后,会将网站证书(包含公钥)发给客户端
  3. 服务器和客户端开始协商 `ssl 链接安全等级`,也就是加密等级
  4. 浏览器客户端通过双方协商的加密等级,通过网站的公钥加密会话,并传送给网站
  5. WEB 服务器通过私钥解密会话
  6. WEB 服务器通过公钥加密会话

HTTP 状态码

HTTP 状态码是服务器端返回给客户端的响应状态码,根据(HTTP)状态码我们就能知道服务器端想要给客户端表达的具体含义, HTTP 状态码可分为 5 大类: 

  • 1XX:消息状态码。 
  • 2XX:成功状态码。 
  • 3XX:重定向状态码。
  • 4XX:客户端错误状态码。
  • 5XX:服务端错误状态码。