我的编程空间,编程开发者的网络收藏夹
学习永远不晚

怎么使用Nginx作反向代理配置GZip压缩

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

怎么使用Nginx作反向代理配置GZip压缩

这篇文章主要介绍了怎么使用Nginx作反向代理配置GZip压缩的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Nginx作反向代理配置GZip压缩文章都会有所收获,下面我们一起来看看吧。

前提条件: node.js + nginx 反向代理.

node.js 需要做的工作:

express 4.0以下版本:

app.use(express.compress()); //主要是这句app.use(express.json()); app.use(express.urlencoded()); app.use(express.bodyparser()); app.use(express.methodoverride()); app.use(express.cookieparser());

为了让所有请求压缩,所以 compress 放在上面.

express 4.0以上版本(包含4.0)

var compress = require('compression');app.use(compress());

4.0以上版本把中间件独立拿出来了.

所以首先需要你 rquire('compression')

点击这里查看express 3.5 和 express 4.0 的主要区别

node.js 需要做的工作就是这么简单.

nginx 需要做的工作:

打开nginx配置文件,修改配置,开启 gzip 开关

nano /usr/local/nginx/conf/nginx.conf

你自己服务器上的 nginx 不一定安装在 /usr/local/ 目录下,所以根据自己安装目录下查找 配置文件 nginx.conf

在 http 配置节点上加如下配置:

gzip on;    gzip_min_length 1k;    gzip_buffers   4 16k;    gzip_http_version 1.0;    gzip_comp_level 2;    gzip_types    text/plain application/x-javascript text/css application/xml;    gzip_vary on;http (    //放上面配置节点  )

每一个配置项表示什么含义呢?

1) gzip

语法:gzip on/off

默认值:off

作用域:http, server, location

说明:开启或者关闭 gzip 模块,这里使用 on 表示启动

2) gzip_min_length

语法:gzip_min_length length

默认值:gzip_min_length 0

作用域:http, server, location

说明:设置允许压缩的页面最小字节数,页面字节数从header头中的content-length中进行获取。默认值是0,不管页面多大都压缩。建议设置成大于1k的字节数,小于1k可能会越压越大。|

3) gzip_buffers

语法: gzip_buffers number size

默认值: gzip_buffers 4 4k/8k

作用域: http, server, location

说明:设置系统获取几个单位的缓存用于存储gzip的压缩结果数据流。4 16k 代表以 16k 为单位,按照原始数据大小以 16k 为单位的4倍申请内存。

4) gzip_comp_level

语法: gzip_comp_level 1..9

默认值: gzip_comp_level 1

作用域: http, server, location

说明:gzip压缩比,1 压缩比最小处理速度最快,9 压缩比最大但处理最慢(传输快但比较消耗cpu)。这里设置为 5。

5) gzip_types

语法: gzip_types mime-type [mime-type ...]

默认值: gzip_types text/html

作用域: http, server, location

说明:匹配mime类型进行压缩,(无论是否指定)"text/html" 类型总是会被压缩的。这里设置为 application/x-javascript text/css application/xml。

常用的静态 type 有,看自己需要压缩的情况而定:

text/htmltext/plaintext/cssapplication/x-javascripttext/javascriptapplication/xml

ok,到这里基本服务端已经配置完毕,nginx 只需要 reload 一下即可。

下面来测试一下,用 curl 来如何测试服务端已经开启 gzip(测试条件是默认gzip_types,即只压缩 text.html ,其他 type 未压缩):

查看是否开启gzip,需要客户端加入:"accept-encoding: gzip, deflate" 头信息。

$ curl -i -h "accept-encoding: gzip, deflate" "http://localhost/tag.php"
http/1.1 200 okserver: nginxdate: thu, 08 mar 2012 07:23:46 gmtcontent-type: text/htmlconnection: closecontent-encoding: gzip
$ curl -i -h "accept-encoding: gzip, deflate" "http://localhost/style.css"
http/1.1 200 okserver: nginxdate: thu, 08 mar 2012 07:23:54 gmtcontent-type: text/cssconnection: closelast-modified: tue, 27 dec 2011 10:00:51 gmtetag: "bc612352322d435769c4bdc03ddb2572"content-length: 22834

可以看出来了把。第二个示例没有被压缩。

关于“怎么使用Nginx作反向代理配置GZip压缩”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么使用Nginx作反向代理配置GZip压缩”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

怎么使用Nginx作反向代理配置GZip压缩

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

怎么使用Nginx作反向代理配置GZip压缩

这篇文章主要介绍了怎么使用Nginx作反向代理配置GZip压缩的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Nginx作反向代理配置GZip压缩文章都会有所收获,下面我们一起来看看吧。前提条件: nod
2023-07-04

nginx怎么配置反向代理

这篇文章主要讲解了“nginx怎么配置反向代理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“nginx怎么配置反向代理”吧!准备工作系统环境:centos 6.5_64关闭SELinux临时
2023-06-27

Linux中怎么配置Nginx反向代理

Linux中怎么配置Nginx反向代理,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。反向代理是什么? 反向代理指以代理服务器来接受Internet上的连接请求,然后将请求转
2023-06-13

CentOS 7中怎么使用cPanel配置Nginx反向代理

本文小编为大家详细介绍“CentOS 7中怎么使用cPanel配置Nginx反向代理”,内容详细,步骤清晰,细节处理妥当,希望这篇“CentOS 7中怎么使用cPanel配置Nginx反向代理”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢
2023-06-27

nginx怎么配置域名反向代理

要配置域名反向代理,可以按照以下步骤操作:打开nginx的配置文件,一般位于 /etc/nginx/nginx.conf 或者 /etc/nginx/sites-available/default。在配置文件中找到 server 配置块,添
nginx怎么配置域名反向代理
2024-04-09

Linux下怎么配置Nginx反向代理

这篇文章主要介绍Linux下怎么配置Nginx反向代理,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!反向代理功能是nginx的三大主要功能之一,反向代理服务器是一种代理服务器,用于管理从外部网络到内部网络的连接或任何
2023-06-28

nginx反向代理配置怎么去除前缀

这篇文章将为大家详细讲解有关nginx反向代理配置怎么去除前缀,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。使用Nginx做代理的时候,可以简单的直接把请求原封不动的转发给下一个服务。简单配
2023-06-28

Nginx反向代理服务器怎么配置与应用

在Nginx中配置反向代理服务器非常简单,只需在nginx.conf文件中添加一些配置即可实现。以下是一个简单的配置示例:server {listen 80;server_name example.com;location / {prox
Nginx反向代理服务器怎么配置与应用
2024-05-06

怎么在Nginx中配置反向代理并清除缓存

本篇文章为大家展示了怎么在Nginx中配置反向代理并清除缓存,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一. Nginx 配置12345678910111213141516171819202122
2023-06-08

怎么实现Nginx路由转发和反向代理location配置

这篇文章主要讲解了“怎么实现Nginx路由转发和反向代理location配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么实现Nginx路由转发和反向代理location配置”吧!Ngi
2023-06-25

怎么使用ChatGPT解决Nginx反向代理的问题

这篇文章主要讲解了“怎么使用ChatGPT解决Nginx反向代理的问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用ChatGPT解决Nginx反向代理的问题”吧!背景我有 3 台服
2023-07-05

在Linux系统下怎么使用Docker以及Weave搭建Nginx反向代理

这篇文章主要讲解了“在Linux系统下怎么使用Docker以及Weave搭建Nginx反向代理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在Linux系统下怎么使用Docker以及Weav
2023-06-12

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录