13 nginx gzip压缩提升网站速度
一:nginx gzip压缩提升网站速度
我们观察news.163.com的头信息
请求:
Accept-Encoding:gzip,deflate,sdch
响应:
Content-Encoding:gzip
Content-Length:36093
再把页面另存下来,观察,约10W字节,实际传输的36093字节
原因-------就在于gzip压缩上.
原理:
浏览器---请求----> 声明可以接受 gzip压缩 或 deflate压缩 或compress 或 sdch压缩
从http协议的角度看--请求头 声明 acceopt-encoding: gzip deflate sdch (是指压缩算法,其中sdch是google倡导的一种压缩方式,目前支持的服务器尚不多)
服务器-->回应---把内容用gzip方式压缩---->发给浏览器
浏览<-----解码gzip-----接收gzip压缩内容----
推算一下节省的带宽:
假设 news.163.com PV 2亿
2*10^8 * 9*10^4 字节 ==
2*10^8 * 9 * 10^4 * 10^-9 = 12*K*G = 18T
节省的带宽是非常惊人的
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/plain application/xml # 对哪些类型的文件用压缩 如txt,xml,html ,css
gzip_vary on|off # 是否传输gzip压缩标志
------压缩gzip配置nginx--------------
在server断里配置
server{
gzip on;
gzip_buffers 32 4k ;
gzip_comp_level 6;
gzip_min_length 200;
gizp_type text/css text/xml applocation/x-javascript;
}
---------------------------
注意:
图片/mp3这样的二进制文件,不必压缩
因为压缩率比较小, 比如100->80字节,而且压缩也是耗费CPU资源的.
比较小的文件不必压缩,
最新文章
- jQuery中width、innerWidth、outerWidth的区别
- C#设计模式之组合
- 二模12day1解题报告
- Struts输出流向jsp页面写入图片乱码
- delphi 博客地址收藏
- DbHelper and OracleHelper
- hdu 5595 GTW likes math(暴力枚举查询)
- iOS Crash获取闪回日志和上传server
- C++ static与单例模式
- 【中国剩余定理】 poj 1006
- Angular2 - Starter - Routes, Route Resolver
- 函数, lambda表达式
- python上下文管理器ContextLib及with语句
- tp备份数据
- 【精编重制版】JavaWeb 入门级项目实战 -- 文章发布系统 (第二节)
- POJ 3903 Stock Exchange 【最长上升子序列】模板题
- C语言字符串操作详细总结
- matlab画图标题自定义字体大小
- Visual Studio 2013 发布正式版及使用感受
- HTTP报文头Accept和Content-Type总结
热门文章
- 【Visual Studio】error c4996: &#39;fopen&#39;: This function or variable may be unsafe(转)
- Java中Vector笔记
- django 模型生成sql(多对多)
- 转载——Java与WCF交互(二):WCF客户端调用Java Web Service
- Android代码中设置字体大小,字体颜色,显示两种颜色.倒计时效果
- shell的各种运行模式?
- 2016北京集训测试赛(十六)Problem B: river
- Linux ClientDataSet libmidas.so.2
- UNIX网络编程卷1 server程序设计范式8 预先创建线程,由主线程调用accept
- Oracle递归操作