文章正文
Nginx-缓存、压缩
【文章】2020-04-23
简介Nginx-缓存、压缩
场景:业务中一般存在页面来回切换或加载同样的素材,若每次相同素材加载都需要重新加载是很消耗流量和加重响应速度
解决:nginx通过expires配置缓存时间告知浏览器该素材可进行缓存并缓存多长时间;
expires
语法:expires [time|@time-of-day|epoch|max|off]
默认值:expires off
使用字段:http, server, location
这个指令控制是否在应答中标记一个过期时间,如果是,如何标记。
·off 将禁止修改头部中的 Expires和Cache-Control字段。
·epoch 将Expires头设置为1 January, 1970 00:00:01 GMT。
·max 将Expires头设置为31 December 2037 23:59:59 GMT,将Cache-Control最大化到10 years。
·如果将指令设置为一个不带@标记的值,那么过期时间将是应答时间的相对时间(如果这个时间在“modified”之前),或者是文件的修改时间(当"modified"存在,在版本0.7.0和0.6.32可用),并且可以指定一个负的时间,它将Cache-Control头设置为no-cache比较。
·如果指令的值被设置为一个带@标记的值,那么将指定一个绝对的time-of-day过期时间,可以指定两种格式分别为Hh或Hh:Mm,其中H的大小范围为0到24,M的大小范围为0到59(在0.7.9和0.6.34可用)。
一个非负的时间值将Cache-Control头设置为 max-age = #,#将适当的换算为秒数。
注意:expires仅仅适用于200, 204, 301, 302,和304应答
常用的配置:
server {
listen 8080;
server_name localhost;
location / {
root html;
}
#告知浏览器缓存此文件并设置缓存时间
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 10s;#缓存2秒
#expires 2m;#缓存2分钟
#expires 2h;#缓存2小时
#expires 2d;#缓存2天
root html;
}
error_page 500 502 503 504 /50x.html;
location /50x.html {
root html;
}
}
通过测试我们可以看到二次访问加载时间为0秒;响应上显示缓存时间为10秒,达到要求
压缩
场景:一些项目静态资源如html、css、js等都很多且很大,请求起来很费时间及流量,但这些资源往往都可以进行压缩,并且压缩比例很大;
解决:nginx使用gzip可指定类型进行压缩
gzip
语法:gzip on|off
默认值:gzip off
使用字段:http, server, location, location中的if字段
指定是否启用gzip压缩。
经常搭配下面使用:
gzip_types:默认值为gzip_types text/html ;为除“text/html”之外的MIME类型启用压缩,“text/html”总是会被压缩。
gzip_min_length:默认值为gzip_min_length 0 ;设置被压缩的最小请求,单位为bytes。少于这个值大小的请求将不会被压缩,这个值由请求头中的Content-Length字段决定。
gzip_buffers :默认值为gzip_buffers 4 4k/8k ;指定缓存压缩应答的缓冲区数量和大小,如果不设置,一个缓存区的大小为分页大小,根据环境的不同可能是4k或8k。
gzip_comp_level :默认值为gzip_comp_level 1 ;指定压缩等级,其值从1到9,1为最小化压缩(处理速度快),9为最大化压缩(处理速度慢)。
实例如下:
server {
listen 2015;
server_name localhost;
location / {
# 对js、css、html格式的文件启用gzip压缩功能,图片格式由于压缩比例太小,且压缩耗费cpu不建议压缩
gzip on; # 启用gzip压缩,默认是off,不启用
gzip_types application/javascript text/css;#为除“text/html”之外的MIME类型启用压缩,“text/html”总是会被压缩。
gzip_min_length 1024; # 所压缩文件的最小值,小于这个的不会压缩
gzip_buffers 4 1k; # 设置压缩响应的缓冲块的大小和个数,默认是内存一个页的大小
gzip_comp_level 1; # 压缩水平,默认1。取值范围1-9,取值越大压缩比率越大,但越耗cpu时间
root html;
}
error_page 500 502 503 504 /50x.html;
location /50x.html {
root html;
}
}
打赏支持
感谢您的支持,加油!

打开微信扫码打赏,你说多少就多少
找书费时,联系客服快速查找!

在线客服8:30-23:00,若离线请留言!
获取教程,请联系在线客服!

在线客服8:30-23:00,若离线请留言!
热门阅读
-
手机时尚理财技巧大全集 网络购物、淘宝开店、银行理财、生活服务一本通 海天理财编著 北京:清华大学出版社 PDF 9787302369967 出版时间:2014.pdf
手机时尚理财技巧大全集 网络购物、淘宝开店、银行理财、生活服务一本通 海天理财编著 北京:清华大学出版社 PDF 9787302369967 出版时间:2014.pdf ...
-
涨海行舟---海洋遗产的考古与历史探索 吴春明 著 海洋出版社 9787502794040 PDF_出版时间:2016年06月.pdf
涨海行舟---海洋遗产的考古与历史探索 吴春明 著 海洋出版社 9787502794040 PDF_出版时间:2016年06月.pdf ...
-
水下文物保存环境调查技术与评估方法研究—以福建平潭沉船区为例 张际标 等 中国海洋出版社 9787521002508 PDF_出版时间:2018年12月.pdf
水下文物保存环境调查技术与评估方法研究—以福建平潭沉船区为例 张际标 等 中国海洋出版社 9787521002508 PDF_出版时间:2018年12月.pdf ...
-
闽滨滨海-水下考古物探技术集成 朱滨 著 海峡文艺出版社 9787555004936 PDF_出版时间:2015年06月.pdf
闽滨滨海-水下考古物探技术集成 朱滨 著 海峡文艺出版社 9787555004936 PDF_出版时间:2015年06月.pdf ...
-
毛泽东百科全书 1-7卷 第2版 廖盖隆,胡富国,卢功勋主编 北京:光明日报出版社 PDF 7800914844 出版时间:2003.pdf
毛泽东百科全书 1-7卷 第2版 廖盖隆,胡富国,卢功勋主编 北京:光明日报出版社 PDF 7800914844 出版时间:2003.pdf ...
-
无罪流放 66位知识分子五 七干校告白 贺犁 杨健 光明日报出版社 9787801450234 PDF_出版时间:1998年01月.pdf
无罪流放 66位知识分子五 七干校告白 贺犁 杨健 光明日报出版社 9787801450234 PDF_出版时间:1998年01月.pdf ...
-
世界情诗金库 黎华 百花文艺出版社 9787530609651 黎华 编 PDF_出版时间:1992年01月.pdf
世界情诗金库 黎华 百花文艺出版社 9787530609651 黎华 编 PDF_出版时间:1992年01月.pdf ...
-
中国好作文 小学生满分作文 汤素兰 湖南教育出版社 9787553919256 PDF_出版时间:2015年01月.pdf
中国好作文 小学生满分作文 汤素兰 湖南教育出版社 9787553919256 PDF_出版时间:2015年01月.pdf ...
-
共和国重大事件决策实录:第二卷 上下册 邱石 经济日报出版社 9787801274175 PDF_出版时间:1998年02月.pdf
共和国重大事件决策实录:第二卷 上下册 邱石 经济日报出版社 9787801274175 PDF_出版时间:1998年02月.pdf ...
-
植物大战僵尸 2 恐龙漫画 神奇恐龙果 笑江南编绘 北京:中国少年儿童出版社 PDF 9787514843941 出版时间:2018.pdf
植物大战僵尸 2 恐龙漫画 神奇恐龙果 笑江南编绘 北京:中国少年儿童出版社 PDF 9787514843941 出版时间:2018.pdf ...