一、概述
Nginx的ngx_http_gzip_module压缩模块提供对文件内容的压缩功能;开启压缩功能可以节约网站宽带,提升用户访问体验,默认已经安装,只需要在Nginx配置文件中开启相关参数即可。
二、实验环境
nginx-1.12.2.版本
三、实验步骤
手工编译安装Nginx------》》开启gzip压缩功能--------》》抓包测试
四、安装Nginx
安装环境依赖包,创建程序用户
[root@localhost ~]# yum install gcc gcc-c++ pcre* zlib-devel make -y
[root@localhost ~]# useradd -M -s /sbin/nologin nginx
在Nginx官网下载安装包,解压Nginx包到opt目录下
[root@localhost home]# cd LNMP-C7/
[root@localhost LNMP-C7]# ls
Discuz_X3.4_SC_UTF8.zip php-5.6.11.tar.bz2
mao.jpg php-7.1.10.tar.bz2
mysql-boost-5.7.20.tar.gz php-7.1.20.tar.bz2
ncurses-5.6.tar.gz php-7.1.20.tar.gz
nginx-1.12.2.tar.gz zend-loader-php5.6-linux-x86_64_update1.tar.gz
[root@localhost LNMP-C7]# tar zxvf nginx-1.12.2.tar.gz -C /opt
进入opt执行configure脚本
[root@localhost LNMP-C7]# cd /opt/nginx-1.12.2/
[root@localhost nginx-1.12.2]# ./configure \
> --prefix=/usr/local/nginx \
> --user=nginx \
> --group=nginx \
> --with-http_stub_status_module
安装和编译
[root@localhost nginx-1.12.2]# make && make install
五、开启压缩模块相关功能
[root@localhost nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf
33 gzip on; ##开启压缩
34 gzip_min_length 1k; ##允许压缩的最小字节数
35 gzip_buffers 4 16k; ##buffers
36 gzip_http_version 1.1; ##版本
37 gzip_comp_level 6; ##压缩比率,最小为1,速度快;最大为9,速度慢
38 gzip_types text/plain application/x-javascript text/css image/jpg image/jpeg image/png image/gif application/xml text/javascript application/x-httpd-php application/javascript application/json; ##支持压缩图片类型
39 gzip_disable "MSIE [1-6]\."; ##禁用gzip的条件,ie6以下不启用gzip
40 gzip_vary on; ##可以让前端的缓存服务器缓存经过gzip压缩页面
在nginx首页中插入图片进行测试
[root@localhost nginx-1.12.2]# cp /home/LNMP-C7/mao.jpg /usr/local/nginx/html/
[root@localhost nginx-1.12.2]# cd /usr/local/nginx/html
[root@localhost html]# ls
50x.html index.html mao.jpg
[root@localhost html]# vim index.html
14 <h1>Welcome to nginx!</h1>
15 <img src="mao.jpg"/> ####加入图片
关闭防火墙,重启Nginx服务
[root@localhost nginx-1.12.2]# systemctl stop firewalld.service
[root@localhost nginx-1.12.2]# setenforce 0
[root@localhost nginx-1.12.2]# systemctl stop nginx.service
[root@localhost nginx-1.12.2]# systemctl start nginx.service
六、抓包测试
访问nginx首页
未开启压缩之前
开启压缩功能之后