• 欢迎访问ByWei.Cn,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,加入百味博客 QQ群
  • 已升级为最新版主题,并将持续优化改造中,支持说说碎语功能,可像添加文章一样直接添加说说,博客主题升级啦
  • 感谢您百度求点赞啊!百度网址
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏百味博客吧
  • 博主热烈欢迎 软件定制开发 联系:http://www.bywei.cn

Nginx Gzip 压缩模块优化网页conf配置

智能互联 bywei 7年前 (2012-08-03) 941次浏览 0个评论 扫描二维码

随着 nginx 的发展,越来越多的网站使用 nginx,因此 nginx 的优化变得越来越重要,今天我们来看看 nginx 的 gzip 压缩到底是怎么压缩的呢?
gzip(GNU-ZIP)是一种压缩技术。经过 gzip 压缩后页面大小可以变为原来的 30%甚至更小,这样,用户浏览页面的时候速度会块得多。gzip 的压缩页面需要浏览器和服务器双方都支持,实际上就是服务器端压缩,传到浏览器后浏览器解压并解析。浏览器那里不需要我们担心,因为目前的巨大多数浏览器 都支持解析 gzip 过的页面。
Nginx 的压缩输出有一组 gzip 压缩指令来实现。相关指令位于 http{….}两个大括号之间。

gzip on;
//该指令用于开启或关闭 gzip 模块(on/off)

gzip_min_length 1k;
//设置允许压缩的页面最小字节数,页面字节数从 header 头得 content-length 中进行获取。默认值是 0,不管页面多大都压缩。建议设置成大于 1k 的字节数,小于 1k 可能会越压越大。

gzip_buffers 4 16k;
//设置系统获取几个单位的缓存用于存储 gzip 的压缩结果数据流。4 16k 代表以 16k 为单位,安装原始数据大小以 16k 为单位的 4 倍申请内存。

gzip_http_version 1.1;
//识别 http 的协议版本(1.0/1.1)

gzip_comp_level 2;
//gzip 压缩比,1 压缩比最小处理速度最快,9 压缩比最大但处理速度最慢(传输快但比较消耗 cpu)

gzip_types text/plain application/x-javascript text/css application/xml
//匹配 mime 类型进行压缩,无论是否指定,”text/html”类型总是会被压缩的。
gzip_vary on;
//和 http 头有关系,加个 vary 头,给代理服务器用的,有的浏览器支持压缩,有的不支持,所以避免浪费不支持的也压缩,所以根据客户端的 HTTP 头来判断,是否需要压缩

nginx 配置 gzip 段如下:

gzip on;
gzip_min_length 1k;
gzip_buffers 16 64k;
gzip_http_version 1.1;
gzip_comp_level 6;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;

注意:

不要在gzip_types 中增加 text/html,若增加会出现下面错误

#Starting nginx: [warn]: duplicate MIME type “text/html” in /usr/local/nginx/conf/nginx.conf:23

解决办法:去掉下面一行中的“text/html”。

gzip_types  text/plain text/html  text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

原因:text/html 根本就不需要写的,gzip 默认就会压缩它的,只不过以前的 nginx 版本不提示这个警告而已,新版本的会出这个警告。

 


百味博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Nginx Gzip 压缩模块优化网页 conf 配置
喜欢 (0)
[微信扫一扫]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址