商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > Apache配置中如何配置Gzip压缩

Apache配置中如何配置Gzip压缩

  发布于2026-07-20 阅读(0)

扫一扫,手机访问

不夸张地说,网页性能优化这件事,很多时候不是靠什么“黑科技”,而是先把那些基础功做到位。Gzip压缩就是这样一个基础但效果显著的手段——它能直接减少服务器和浏览器之间传输的数据量,让页面加载速度明显提升。下面就来梳理一下在Apache服务器上启用Gzip的具体步骤,操作起来其实并不复杂。

1. 先确认一下mod_deflate模块是不是已经加载了

Apache的Gzip功能是通过mod_deflate模块来实现的。所以第一步,得看看这个模块有没有被启用。怎么确认?用这条命令扫一眼就行:

apachectl -M | grep deflate

如果在输出里看到了deflate_module,那说明模块已经在了,直接跳到下一步配置就行。如果没看到,就需要手动把它拉出来:

sudo a2enmod deflate

启用模块之后,别忘了重启Apache让它生效:

sudo systemctl restart apache2

2. 配置mod_deflate,让压缩规则生效

模块就位之后,接下来就是告诉Apache“哪些内容该压缩,哪些不该碰”。通常的做法是编辑Apache的主配置文件(比如/etc/apache2/apache2.conf或者/etc/httpd/conf/httpd.conf),或者更干净一点,单独创建一个配置文件(比如/etc/apache2/conf-a vailable/deflate.conf),然后启用它。

把下面这段配置加进去,基本上就能覆盖大多数场景了:

# 启用Gzip压缩,针对这些类型的内容进行压缩AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/ja vascript application/json# 设置压缩级别,9是最高级别,压缩效果最好但稍微耗点CPUDeflateCompressionLevel 9# 对于某些浏览器,设置最小压缩大小SetOutputFilter DEFLATESetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-varySetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-varySetEnvIfNoCase Request_URI \.pdf$ no-gzip dont-varySetEnvIfNoCase Request_URI \.a vi$ no-gzip dont-varySetEnvIfNoCase Request_URI \.mov$ no-gzip dont-varySetEnvIfNoCase Request_URI \.mp3$ no-gzip dont-varySetEnvIfNoCase Request_URI \.mp4$ no-gzip dont-varySetEnvIfNoCase Request_URI \.wa v$ no-gzip dont-vary# 对于某些浏览器,设置最大压缩大小SetEnvIf Content-Length ^[1-9][0-9]{3,}$ no-gzip dont-vary

注意一下,这里特意把图片、视频、音频、压缩包这些已经做过压缩处理的文件类型排除在外了。对它们再压一遍,不仅效果微乎其微,反而可能浪费服务器资源。

3. 启用配置文件,让配置生效

如果你刚才用的是单独创建的配置文件,那还需要把它启用一下:

sudo a2enconf deflate

同样,启用之后要重启Apache:

sudo systemctl restart apache2

4. 验证一下,Gzip到底有没有跑起来

配置完成,怎么知道它真的在工作?最简单的方法是用浏览器的开发者工具(按F12打开),切换到“网络”标签,随便刷新一个页面,找一个请求看看它的响应头。如果看到了Content-Encoding: gzip这个字段,那就说明压缩已经正常工作了。

需要留意的几个点

  • Gzip压缩需要服务器和客户端(浏览器)双方都支持,好在现在主流的浏览器都已经默认支持了,基本不用担心。
  • 别对图片、视频、音频这类已经压缩过的文件开启Gzip,这是典型的“费力不讨好”。
  • 压缩级别(DeflateCompressionLevel)和压缩大小阈值可以根据服务器负载和实际场景来调整,不是非得设成9。如果CPU资源紧张,适当降低级别也是常见做法。

按这套流程走下来,Apache服务器上的Gzip压缩基本就配置好了。效果立竿见影,值得一试。

本文转载于:https://www.yisu.com/ask/50761843.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注