首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Nginx开启资源压缩模块gzip

Nginx开启资源压缩模块gzip

作者头像
Petrochor
发布于 2023-04-01 01:56:21
发布于 2023-04-01 01:56:21
1.4K00
代码可运行
举报
文章被收录于专栏:StephenStephen
运行总次数:0
代码可运行

介绍

如果一个静态资源的Size越小,那么自然传输速度会更快,同时也会更节省带宽,因此我们在部署项目时,也可以通过Nginx对于静态资源实现压缩传输,一方面可以节省带宽资源,第二方面也可以加快响应速度并提升系统整体吞吐。

Nginx 也提供了三个支持资源压缩的模块 ngx_http_gzip_modulengx_http_gzip_static_modulengx_http_gunzip_module ,其中 ngx_http_gzip_module 属于内置模块,代表着可以直接使用该模块下的一些压缩指令,后续的资源压缩操作都基于该模块,先来看看压缩配置的一些参数/指令。

参数项

释义

参数值

gzip

开启或关闭压缩机制

on/off

gzip_types

根据文件类型选择性开启压缩机制

image/png text/cs5…

gzip_comp_level

用于设置压缩级别,级别越高越耗时

1~9(越高压缩效果越好,资源消耗也越大)

gzip_vary

设置是否携带Vary:Accept-Encoding头域的响应头部

on/off

gzip_buffers

设置处理压缩请求的缓冲区数量和大小

数量大小,如16 8k

gzip_disable

针对不同客户端的请求来设置是否开启压缩

如.Chrome.

gzip_http_version

指定压缩响应所需要的最低HTTP请求版本

如1.1

gzip_min_length

设置触发压缩的文件最低大小

如512k

gzip_proxied

对于后端服务器的响应结果是否开启压缩

off、expired、no-cache……

用法

以下是一个网站开启 gzip 资源压缩之前的效果,可见资源很大,加载时间也很长。

开启gzip

vim /user/local/nginx/conf/nginx.conf

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
http{
    # 开启压缩机制
    gzip on;
    # 指定会被压缩的文件类型(也可自己配置其他类型)
    gzip_types text/plain application/javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    # 设置压缩级别,越高资源消耗越大,但压缩效果越好
    gzip_comp_level 5;
    # 在头部中添加Vary: Accept-Encoding(建议开启)
    gzip_vary on;
    # 处理压缩请求的缓冲区数量和大小
    gzip_buffers 16 8k;
    # 对于不支持压缩功能的客户端请求不开启压缩机制
    gzip_disable "MSIE [1-6]\."; # 低版本的IE浏览器不支持压缩
    # 设置压缩响应所支持的HTTP最低版本
    gzip_http_version 1.1;
    # 设置触发压缩的最小阈值
    gzip_min_length 5k;
    # 关闭对后端服务器的响应结果进行压缩
    gzip_proxied off;
}

重启nginx

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 验证nginx配置语法是否有误
nginx -t
# 重启nginx
nginx -s reload

效果

可见资源已小了很多,速度也有了明显的提升。

出现 Content-Encoding: gzip 说明该资源已使用 gzip 资源压缩

结语

gzip_proxied 选项

参数值

说明

off

关闭Nginx对后台服务器的响应结果进行压缩

expired

如果响应头中包含Expires信息,则开启压缩

no-cache

如果响应头中包含Cache-Control:no-cache信息,则开启压缩

no-store

如果响应头中包含Cache-Control:no-store信息,则开启压缩

private

如果响应头中包含Cache-Control:private信息,则开启压缩

no_last_modified

如果响应头中不包含Last-Modified信息,则开启压缩

no_etag

如果响应头中不包含ETag信息,则开启压缩

auth

如果响应头中包含Authorization信息,则开启压缩

any

无条件对后端的响应结果开启压缩机制

注意:

图片、视频类似的二进制资源文件,会默认开启压缩机制,因此一般无需再次开启压缩。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023/03/30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Unity-UI(UGUI详解)02.1 Canvas组件、Visual组件
Canvas组件代表UI被放置和渲染的虚拟空间。全部的UI元素必须是带有Canvas组件的Gameobject的子物体。当我们创建一个UI元素从菜单的时候,如果场景中没有canvas,将自动创建一个canvas
祝你万事顺利
2019/07/18
2.8K0
Unity-UI(UGUI详解)02.1 Canvas组件、Visual组件
零基础入门 10: 编辑器下的UGUI Image
Image组件是Unity里显示图片的组件,可以将Sprite类型的图片显示在Canvas下。
韩东吉
2018/10/19
1.3K0
零基础入门 10: 编辑器下的UGUI  Image
[学习笔记]unity3d-UGUI
简介 Unity 图形用户界面(unity Graphical User Interface) Unity4.6版本之后引入的界面显示系统 Unity公司自己研发的一套界面显示系统 UGUI和OnGUI、NGUI的区别 uGUI的Canavas有世界坐标和屏幕坐标 uGUI的Image可以使用material UGUI通过Mask来裁剪,而NGUI通过Panel的Clip NGUI的渲染前后顺序是通过Widget的Depth,而UGUI渲染顺序根据Hierarchy的顺序,越下面渲染在顶层。 UGUI不需要
六月丶
2022/12/26
3.3K0
[学习笔记]unity3d-UGUI
零基础入门 18: UGUI Slider
现在教程的思路是按照UGUI的组件进行逐一的讲解,先是在Unity里的操作设置,以及代码段的操作控制。上一篇Toggle讲解之后,这篇就是UGUI里的Slider组件了。
韩东吉
2018/10/19
1.5K0
零基础入门 18: UGUI  Slider
零基础入门 11: 通过脚本设置UGUI Image
因为默认的脚本是没有引入UnityEngine库的。所以当我们新创建了一个脚本后,在脚本上方加入UnityEngine的引用。
韩东吉
2018/10/19
5.9K0
零基础入门 11: 通过脚本设置UGUI  Image
零基础入门 15: UGUI Button
按钮对于一个应用或者游戏来说。必不可少,今天这篇分享,来说下UGUI里的按钮,Button组件。
韩东吉
2018/10/19
1.9K0
零基础入门 15: UGUI  Button
如何快速优化手游性能问题?从UGUI优化说起
作者Feefi,加入腾讯多年,目前主要从事Unity项目UI开发及优化相关工作,曾获得国际软件设计大赛“成都创业金钥匙”奖。
WeTest质量开放平台团队
2018/10/29
1.6K0
零基础入门 8: Canvas和EventSystem
UGUI是新版Unity自带的原生UI系统,组件也在不断的增加扩展,基本的贴图,文本,按钮等还是可以用的。接下来的几篇内容会以UGUI展开分享。
韩东吉
2018/10/19
1.7K0
零基础入门 8: Canvas和EventSystem
零基础入门 21: UGUI Inputfield
因为一些外部原因,以后文章的发布只会在公众号内推送,取消了在蛮牛专栏的文章更新,望蛮牛小伙伴周知,关注微信公众号,可以第一时间收到新分享的推送通知。
韩东吉
2018/10/19
2.9K0
零基础入门 21: UGUI  Inputfield
零基础入门 14: UGUI 打字机效果实现
如上图,效果大概就是这样,有一段文字,和音频,文字要这种显示效果,并且在文字出现的时候,要有背景键盘音效的声音,来模拟打字机的效果。最好还可以调整文字的出现速度。
韩东吉
2018/10/19
1.8K0
零基础入门 14: UGUI  打字机效果实现
hash哈希竞猜游戏模式系统开发技术源码丨hash哈希游戏开发逻辑程序方案
NFT将成为元宇宙的关键基础设施,元界悔成为NFT最实出的应用,NFT的独特性和可替代性将为现实世界中的人类沉浸在元宇宙中提供可靠的墓础元宇宙是线上线下世界的融合,物理与电子相结合的方式。元宇宙为虚拟世界深入现实世界铺平了道路,无论是从虛拟到现实,还是从现实到虛拟,都致力于为用户提供更真实的体验。
系统_I8O28578624
2023/02/21
2K0
零基础入门 23: UGUI ScrollView
今天要分享的内容,是近期内关于UGUI的最后一篇,UGUI里的滚动视图ScrollView,后期的内容会根据项目实用的功能组件进行分享。
韩东吉
2018/10/19
3.3K0
零基础入门 23: UGUI  ScrollView
零基础入门 20: UGUI DropDown
(题外话,因为这期分享中段制作之后,微信平台抽疯,Gif图无法使用,导致我不得不尝试用其他的方式来让文章看起来没那么死板,在后面的部分展示中,我插入了视频文件而并非Gif,不过大小进行了控制,不会浪费太多流量,不过仍然建议wifi环境下观看。)
韩东吉
2018/10/19
3K0
零基础入门 20: UGUI  DropDown
UI篇-CATextLayer和 富文本的交融
CATextLayer适用于IOS或者MAC,比UIlablel 和 NSTextView 能做的事很多,可以这样说UIlablel是通过CATextLayer实现的,身为CALayer的三大子类之一,它的功能远比 UIlablel 强大的多的多,其最主要的特点是CATextLayer可以被NSMutableAttributedString直接附值。而NSMutableAttributedString有可以最自己内容作出颜色以及大小的调整,这样结合起来使用的话,就远比UILabel 灵活的多,效果也酷炫的多,也许CATextLayer就是为了NSMutableAttributedString而生的,(哈哈,开个玩笑)。下面就简要介绍下CATextLayer 的常规使用,不足之处,还望朋友们下面留言补充,不胜感谢。 苹果官网给出CATextLayer的API解释
進无尽
2018/09/12
2.9K0
UI篇-CATextLayer和 富文本的交融
Draw Text in Deep
Android系统提供了Textview来提供文字的显示,但很多时候开发者还需要使用Canvas来绘制Text,这时候,canvas.drawText()就不像Textview的使用这么简单了,需要掌握文字的测量以及渲染的流程。
用户1907613
2019/12/19
1.5K0
写给零基础小白的网站开发入门
本教程针对零基础同学,讲解网站开发三个基础技术:HTML、CSS、JS,带你快速入门!
程序员鱼皮
2021/04/15
2.8K0
css基础第一弹
css是什么:CSS是层叠样式表(Cascading Style Sheets)的简称,有时我们也会称之为CSS样式表或级联样式表。CSS 是也是一种标记语言。 有什么用:主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局和外观显示样式。CSS是一种描述HTML文档样式的语言,CSS描述应该如何显示HTML元素。
是小北a
2022/03/28
2.1K0
css基础第一弹
html+css学习笔记005-font属性0text属性
Author:Mr.柳上原 付出不亚于任何的努力 愿我们所有的努力,都不会被生活辜负 不忘初心,方得始终 像我这样的人 最近总是单曲循环的播放着这首《像我这样的人》 听很久都不会觉得腻 或许这首歌最大的魅力就是共鸣 “ 像我这样迷茫的人 像我这样寻找的人 像我这样碌碌无为的人 像我这样孤单的人 像我这样傻的人 像我这样不甘平凡的人 世界上有多少人 ” <!DOCTYPE html> <!-- 文档类型:标准html文档 --> <html lang='en'> <!-- html根标签 翻译文字:英文 -
Mr. 柳上原
2018/09/05
8900
CSS入门笔记 - 初识CSS
引言 上次给大家带来了html部分的笔记,大家的反馈让我非常开心?。 这次给大家带来css部分的第一篇笔记,由于本人比较蠢,学的很慢,而且css部分内容非常的细、广,需要不断code,才能体会其中细节
用户1667431
2018/04/18
2.1K0
CSS入门笔记 - 初识CSS
CSS-基础样式
原文链接:https://note.noxussj.top/?source=cloudtencent 定位相关 相对定位 .my-content { position: relative; }
菜园前端
2023/04/13
7560
相关推荐
Unity-UI(UGUI详解)02.1 Canvas组件、Visual组件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档