Nginx 开启 gzip 优化加载速度
部署官网前端页面时,发现页面加载速度略慢,暂时没有接 cdn,所以考虑到开启 Nginx 的 gzip 进行优化。
原理
nginx 开启 gzip 可以使得响应报文在达到客户端之前进行压缩,从而节约带宽,提高页面响应速度。Nginx 会通过 ngx_http_gzip_module 模块拦截请求,对 nginx.conf 配置的开启 gzip 压缩的文件类型进行压缩。
配置
在 nginx.conf 中的 http {} 模块下加入下面的配置即可开启 gzip :
gzip on;
gzip_min_length 1k; //控制 gzip 压缩的下限,即低于 1k 的资源文件不压缩
gzip_comp_lever 1; //压缩级别,数字越高,压缩效果越好,但是更占服务器 cpu 资源
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript; //控制压缩的文件类型
gzip_static on; //nginx对于静态文件的处理模块,开启后会寻找以.gz结尾的文件,直接返回,不会占用cpu进行压缩,如果找不到则不进行压缩
gzip_vary on; //是否在http header中添加Vary: Accept-Encoding,建议开启
gzip_buffers 2 4k; //设置压缩所需要的缓冲区大小,以4k为单位,如果文件为7k则申请2*4k的缓冲区
gzip_http_version 1.1; //设置gzip压缩针对的HTTP协议版本
gzip_disable "MSIE [1-6]\."; //配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版本不支持)
测试
未开启:
开启后: