如何在Apache服务中开启Gzip功能

概述

Web服务使用非常普遍的一种数据压缩格式是Gzip,开启Gzip后能降低网站流量,在访问量大的情况下能显著降低流量,节省带宽。本文主要讲述如何在Apache服务中开启Gzip功能。

详细信息

说明

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。

  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。

  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

  1. 请您先检查Apache安装时是否开启了Gzip支持,找到Apache的主程序路径/usr/sbin/httpd。然后执行/usr/sbin/httpd -M命令查看是否有deflate_moduleheaders_modulefilter_module三个模块。如果有以上三个模块说明Apache已经具备支持Gzip的条件,一般默认都是具备的。

  2. 修改Apache配置文件

    vim /etc/httpd/conf/httpd.conf

    添加以下内容:

    <IfModule deflate_module> 
    SetOutputFilter DEFLATE
    DeflateCompressionLevel 6
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript
    AddOutputFilter DEFLATE css js txt xml rss html htm
    Header append Vary User-Agent env=!dont-vary
    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png|bmp|tif)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|7z|bz2|sit|rar|bin|iso)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:pdf|doc|docx|xls|xlsx|ppt|pptx)$ no-gzip dont-vary
    </IfModule>

  3. 使用以下命令重启Apache服务。

    /usr/sbin/httpd -k restart

适用于

  • 云服务器ECS

  • 轻量应用服务器