HTTP压缩

HTTP压缩是指: 服务器和客户端之间压缩传输的”文本内容“的方法。 HTTP采用通用的压缩算法,比如gzip来压缩 能大大减少网络传输的数据量,当然,同时会增加一点点服务器的开销。
HTTP内容编码和HTTP压缩的区别:HTTP压缩,在HTTP协议中,其实是内容编码的一种。在http协议中,可以对内容(也就是body部分)进行编码, 可以采用gzip这样的编码, 从而达到压缩的目的。 也可以使用其他的编码把内容搅乱或加密,以此来防止未授权的第三方看到文档的内容。
HTTP压缩的过程:

  1. 客户端发送Http request 给服务器,request 中有Accept-Encoding: gzip, deflate。
  2. 服务器接到request后, 生成原始的Response, 其中有原始的Content-Type和Content-Length。
  3. 服务器通过Gzip,来对Response进行编码, 编码后header中有Content-Type和Content-Length(压缩后的大小), 并且增加了Content-Encoding:gzip. 然后把Response发送给客户端。
  4. 客户端接到Response后,根据Content-Encoding:gzip来对Response 进行解码。 获取到原始response后, 然后显示出界面。
    Gzip的缺点:JPEG这类文件用gzip压缩的不够好。
    Gzip是如何压缩的:Gzip压缩是在一个文本文件中找出类似的字符串, 并临时替换他们,使整个文件变小。

你可能感兴趣的:(HTTP压缩)