首页 > 其他分享 >Apache2.4开启GZIP功能

Apache2.4开启GZIP功能

时间:2022-08-28 21:57:28浏览次数:95  
标签:文件 gzip text 压缩 javascript 开启 application GZIP Apache2.4

Apache2.4开启GZIP功能 - 老码农豆豆 - 博客园  https://www.cnblogs.com/fly_binbin/p/4253064.html

HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度。这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的网站时,服务器中的这个功能就将网页内容压缩后传输到来访的电脑浏览器中显示出来.一般对纯文本内容可压缩到原大小的40%.这样传输就快了,效果就是你点击网址后会很快的显示出来.当然这也会增加服务器的负载. 一般服务器中都安装有这个功能模块的。

减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。gzip 是在 Linux 系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。

  GZip压缩的基本流程如下:

   1. Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩(Accept-Encoding 信息);

    2. 如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名;

    3. 如果请求文件是HTML、CSS等静态文件,Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;

    4. 如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件;

    5. 如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件;

    6. 如果请求文件是动态文件,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。

  网上许多开启GZIP的方法,但是研究了许多才成功了,在这里记录下面

  编辑 http.conf 文件

  去掉 #LoadModule headers_module modules/mod_headers.so 前面的注释#
  去掉 #LoadModule deflate_module modules/mod_deflate.so 前面的注释#
  去掉 #LoadModule filter_module modules/mod_filter.so 前面的注释# 

  文件末尾加上

  <IfModule mod_deflate.c>
   AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/javascript application/json #对指定的内容进行压缩,压缩方式为默认的一个方法
  </IfModule>

详细配置:

<IfModule mod_deflate.c>

DeflateCompressionLevel 6
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/javascript application/json
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是设置不对exe,tgz,gz。。。的文件进行压缩
SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary
AddOutputFilterByType DEFLATE text/* #设置对文件是文本的内容进行压缩,例如text/html text/css text/plain等
AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript #这段代码你只需要了解application/javascript application/x-javascript这段就可以了,这段的意思是对javascript文件进行压缩
AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp #这段是告诉apache对php类型的文件进行压缩
BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.x 有一些问题,所以只压缩文件类型是text/html的
BrowserMatch ^Mozilla/4.0[678] no-gzip # Netscape 4.06-4.08 有更多的问题,所以不开启压缩
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # IE浏览器会伪装成 Netscape ,但是事实上它没有问题

</IfModule>

 

标签:文件,gzip,text,压缩,javascript,开启,application,GZIP,Apache2.4
From: https://www.cnblogs.com/jmbt/p/16633784.html

相关文章

  • mysql-开启日志记录功能
    开启日志记录功能--开启功能SETGLOBALgeneral_log=ON;--保存到文件SETGLOBALlog_output='file';查看日志内容--查看日志保存位置及开启状态showvariab......
  • 一文了解SpringBoot如何开启热部署
    一文了解SpringBoot如何开启热部署本专栏将从基础开始,循序渐进,以实战为线索,逐步深入SpringBoot相关知识相关知识,打造完整的云原生学习步骤,提升工程化编码能力和思维......
  • mysql 开启root远程连接_mysql开启root用户可远程登录方法
    mysql开启root远程连接_mysql开启root用户可远程登录方法要设置我们的mysql服务器支持远程登录方法有很多但也相当的简单,下面来看看开启远程登录的方法吧。开启MySQL......
  • mysql开启日志功能
    今天中午,经理过来说把项目的日志功能给开开,方便以后查看性能,一开始是他弄,嘿,转项目经理久了,技术就难免生疏了,就说了下怎么怎么弄。他走后,我便集中精力搞这个了,以前没弄过,于......
  • Model Driven 开启协作设置,与同事协作和共享链接
    1、进入PowerPlatform管理中心2、选择设置 3、进入设置界面后,选择产品->特性 4、开启“协作”选项,并设置刷新时间,然后保存设置  5、回到modeldriven中,当......
  • python内置模块tarfile模块详解:tarfile模块是Python的标准模块之一,能够方便读取tar归
    前言1、通常来说,在工作中我们遇到的最多的压缩文件格式只有5种,如下: xxx.gz 、 xxx.tar 、 xxx.tgz 、 xxx.zip 、 xxx.rar 2、各种压缩文件格式的简介:①gz:......
  • 如何在nginx中开启ssl?
    OK,在上一篇文章中,我们介绍了如何在openssl工具,创建自签名server端证书 具体的链接如下:https://www.cnblogs.com/chuanzhang053/p/16624147.html 本篇文档中,告诉你,如......
  • 【FAQ】鸿蒙系统开启深色模式包含的应用是如何判断的?
    ​【问题描述】鸿蒙系统开启深色模式包含的应用是如何判断的?安卓应用适配了深色模式,但是筛选中不含有三方应用​【解决方案】根据与相关团队确认,支持深色模式的三方App......
  • 在asp.net core webapi 中开启swagger
    首先需要安装包Swashbuckle.AspNetCore接着在项目中右键属性接着在Startup文件中声明一个字段privatestringcurrentAssemblyName=Assembly.GetExecutingAss......
  • csharp: Zip and Unzip files using GZipStream
      usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.......