Nginx gzip压缩提升网站速度

一、观察Http响应:

Http请求:

Accept-Encoding:gzip,deflate,sdch

Http响应:

Content-Encoding:gzip

Content-Length:65016

再把页面另存下来,文件大小约271,544字节,实际传输的65016字节 ,原因就在于gzip压缩上

原理:

1.浏览器->请求->声明可以接受的压缩技术:gzip压缩或deflate压缩或compress或sdch压缩

(从http协议的角度看--请求头 声明 acceopt-encoding: gzip deflate sdch ,其中sdch是google倡导的一种压缩算法,目前支持的服务器尚不多)

2.服务器->回应(把内容用gzip方式压缩)->发给浏览器

3.浏览器接收gzip压缩内容->解码gzip->返回原数据内容

作用:利用压缩技术可以大幅度地节省带宽

二、Nginx配置gzip:

gzip配置的常用参数 :

gzip on|off                                             #是否开启gzip

gzip_buffers 32 4K| 16 8K                       #缓冲(压缩在内存中缓冲几块? 每块多大?)

gzip_comp_level [1-9]                             #推荐6压缩级别(级别越高,压的越小,越浪费CPU计算资源)

gzip_disable                                           #正则匹配UA 什么样的Uri不进行gzip

gzip_min_length 200                              #开始压缩的最小长度(再小就不要压缩了,意义不大)

gzip_http_version 1.0|1.1                        #开始压缩的http协议版本(可以不设置,目前几乎全是1.1协议)

gzip_proxied                                          #设置请求者代理服务器该如何缓存内容

gzip_types text/html  application/xml    #对哪些类型的文件采用压缩,如html、css(文件类型对应关系查看conf/mime.types)

gzip_vary on|off                                     #是否传输gzip压缩标志

注意,以下几种文件不必压缩:

1.图片/mp3这样的二进制文件压缩比太小,不必压缩

2.因为压缩率比较小, 比如80-100字节,而且压缩也是耗费CPU资源的

3.比较小的文件不必压缩

实例:

gzip on;

gzip_buffers 32 4k;

gzip_com_level 6;

gzip_min_length 4000;

gzip_type text/css text/xmlapplication/javascript;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,224评论 19 139
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 12,729评论 6 152
  • https://nodejs.org/api/documentation.html 工具模块 Assert 测试 ...
    KeKeMars阅读 11,545评论 0 6
  • Http协议详解 标签(空格分隔): Linux 声明:本片文章非原创,内容来源于博客园作者MIN飞翔的HTTP协...
    Sivin阅读 10,639评论 3 82
  • 随着一股强冷空气南下,迎来了春节、蓝天,也迎来了我的一次跨年感冒。开始以为是普通感冒,想着吃药也一周不吃药也是一周...
    田英丽阅读 3,269评论 2 1

友情链接更多精彩内容