网站首页 > 技术教程 正文
工作中使用的Kubernetes ingress controller是Ingress-nginx ,默认没有启用压缩,这篇文章就来介绍如何启用压缩,来减少响应的数据大小。
Nginx使用ngx_http_gzip_module模块来压缩返回给浏览器的数据,Ingress-nginx默认是启用这个模块的,所以,开启压缩只需要修改配置即可,不需要再考虑模块ngx_http_gzip_module的集成,压缩可以选择全局开启,即在http层开启,也可以选择针对选定的域名开启,也就是在“server”层开启。
- 全局开启
在kubernetes中找到Ingress-nginx的ConfigMap,
[root@k8s-master-1 ~]# kc get configmap -n ingress-controller
NAME DATA AGE
ingress-controller-leader-nginx 0 1y9d
ingress-nginx-controller 1 1y9d
ingress-nginx-controller是Ingress-nginx的ConfigMap,编辑这个ConfigMap,添加如下配置:
data:
use-gzip: "true"
gzip-level: "5"
gzip-types: "text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript"
这样便在全局作用域启用了gzip压缩。
- 选定域名开启
Ingress-nginx修改全局作用域的配置,大都会使用ConfigMap实现,对于"server"作用域的修改可以使用"annotations",比如要修改的域名为"app.example.com",找到包含这个域名的Ingress,增加下面配置即可,
......
nginx.ingress.kubernetes.io/server-snippet: |
gzip on;
gzip_disable "MSIE [1-6]\.";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 5;
gzip_min_length 512;
gzip_buffers 16 128k;
gzip_http_version 1.1;
gzip_types "*";
......
每个指令的具体含义,可参考Module ngx_http_gzip_module。
如何判断添加的配置已生效,也很简单,使用curl命令,如下:
[root@k8s-master-1 ~]# curl -I -H "Accept-Encoding: gzip" https://app.example.com
HTTP/1.1 200 OK
Date: Sun, 07 Apr 2024 07:53:51 GMT
Connection: keep-alive
Vary: Accept-Encoding
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Encoding: gzip
如果响应头包含“Content-Encoding: gzip”,那么恭喜你,一切如你所愿。
希望这篇文档能帮助到你!
猜你喜欢
- 2024-10-14 Nginx 部署前后端分离项目,解决跨域问题
- 2024-10-14 跨域的原因以及解决方案(跨域如何产生的,如何处理)
- 2024-10-14 如何为Golang服务器(进程)分配域名?
- 2024-10-03 来,跨个域看看 (CORS)(跨域详解)
- 2024-10-03 Debian安装Nginx并搭建静态网站服务器-OnceAI
- 2024-10-03 Nginx 部署前后端分离项目,解决跨域问题
- 2024-10-03 如何在Ubuntu 20.04上安装Nginx(ubuntu24.04安装教程)
- 2024-10-03 kubernetes从入门到精通系列04-入门命令
- 2024-10-03 「技术架构」在5分钟把前端应用程序安装到NGINX
- 2024-10-03 WebSocket能干些啥?(websocket介绍)
你 发表评论:
欢迎- 最近发表
-
- 阿里P8大佬总结的Nacos入门笔记,从安装到进阶小白也能轻松学会
- Linux环境下,Jmeter压力测试的搭建及报错解决方法
- Java 在Word中合并单元格时删除重复值
- 解压缩软件哪个好用?4款大多数人常用的软件~
- Hadoop高可用集群搭建及API调用(hadoop3高可用)
- lombok注解@Data没有toString和getter、setter问题
- Apache Felix介绍(apache fineract)
- Spring Boot官方推荐的Docker镜像编译方式-分层jar包
- Gradle 使用手册(gradle详细教程)
- 字节二面:为什么SpringBoot的 jar可以直接运行?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)