http与https的区别以及http版本

119 阅读1分钟

HTTP HTTPS的区别

HTTPHTTPS
标准端口80443
数据传输明文SSL加密传输协议/TLS
证书无需证书需要CA证书
OSI模型工作在应用层安全传输机制工作在传输层
加密无法加密证书非对称加密,数据传输对称加密
http1无状态 http2有许多有状态的组件,但应用程序层仍是无状态的

截图.png

http的版本

http0.9 没有请求头,只有get方法

http1.0 不仅支持get,还有post head等方法 除了文字 还可以传输图像,音频,视频等二进制文件

支持cache

新增了状态码,多字符集支持,多部分发送,权限,内容编码

每一次的请求都要建立一次tcp链接,开销较大 后期加入了Connection 但不是标准字段

http1.1 默认采用持续连接 Connection: keep-alive 客户端在最后一个请求时,发送 Connection: close,明确要求服务器关闭 TCP 连接

加入了管道机制,可以同时发出多个请求,但返回还是按顺序的 Content-length区分先回应谁

分块传输编码

新增了put,patch,options,delete

请求头加入了host,指定服务器的域名

支持断点续传

http2.0 二进制协议

多工:客户端和浏览器都可以同时发送多个请求或回应

头信息压缩,客户端和服务器同时维护一张头信息表,生产索引号,传输只携带索引号而不每次都携带cookie

服务器推送

http3 基于UDP协议的QUIC协议

chrome在一个host下最多同时支持6个tcp连接