一、前言
1、为什么要进行网页压缩?
不管一个系统或网站的大与小,都存在相应的图片处理,生成缩略图、为图片加水印等等,如果涉及到APP端,这个图片的处理需求变得更加重要了,因为在目前看来,客户端的屏幕大小不一,会导致以下问题:
- 图片过大导致APP加载图片速度慢;
- 消耗用户过多流量。
在实际的企业当中,nginx服务器上的资源要尽可能的占用的空间少一点。实际上信息量大的网页和高清图片占用存储空间是非常大的,这样不利于服务器性能的优化。
因此我们要在服务器上面将网页和图片进行压缩,让客户端去下载就可以了。
2、网页压缩实现
Nginx性能优化功能: Gzip压缩(大幅度提高页面加载速度) ,开启Gzip压缩功能, 可以使网站的css、js 、xml、html 文件在传输时进行压缩,提高访问速度,进而优化Nginx性能。经过Gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用户浏览页面的时候速度会快得多。Gzip的压缩页面需要浏览器和服务器双方都支持,实际上就是服务器端压缩,传到浏览器后浏览器解压并解析。浏览器那里不需要我们担心,因为目前的巨大多数浏览器 都支持解析Gzip过的页面
3、压缩功能参数
gzip on | 开启gzip压缩功能 |
---|---|
gzip_ min_ length 1k | 用于设置允许压缩的页面最小字节数 |
gzip_ buffers 416k | 表示申请4个单位为16k的内存作为压缩结果流缓存,默认值是申请与原始数据大小相同的内存空间来储gzip压缩结果 |
zip_ http_ version 1.0 | 用于设置识别http协议版本,默认是1.1, 目前大部分浏览器已经支持gzip解压,但处理最慢,也比较消耗服务器CPU资源 |
gzip_ comp level 2 | 用来指定gzip压缩比,1压缩比最小,处理速度最快; 9压缩比最大,传输速度快,但处理速度最慢,使用默认即可 |
gzip_ types text/plain | 压缩类型,是就对哪些网页文档启用压缩功能 |
gzip_ vary on | 选项可以让前端的缓存服务器缓存经过gzip压缩的页面 |
二、实现网页压缩
步骤一:编辑nginx的默认发布文件/usr/local/nginx/html/index.html
cd /usr/local/nginx/html/
cat /etc/passwd > index.html
cat /etc/passwd >> index.html
cat /etc/passwd >> index.html
ll #查看index.html文件大小
nginx -s reload
web页面测试:
页面搜索172.25.1.1,按F12调出开发者工具,可以看出压缩之前的网页大小为4.44k