`
Fangrn
  • 浏览: 818089 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

tomcat和apache配置gzip(HTTP压缩)功能

    博客分类:
  • j2ee
阅读更多

tomcat配置:

<Connector port="80" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="utf-8"
               compression="on"
               compressionMinSize="2048"
               noCompressionUserAgents="gozilla, traviata"
               compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"  />

1) compression="on" 打开压缩功能
2) compressionMinSize="2048" 启用压缩的输出内容大小,这里面默认为2KB
3) noCompressionUserAgents="gozilla, traviata" 对于以下的浏览器,不启用压缩
4) compressableMimeType="text/html,text/xml" 压缩类型

ps:对于某些文本文件比如:log、txt等文件,我们也可以让服务器采用gzip压缩传输,修改conf目录下web.xml,添加    

<mime-mapping>
         <extension>log</extension>
         <mime-type>text/plain</mime-type>
</mime-mapping>

等,就可以指定压缩传输了。通常情况下,压缩传输能大幅度提高展示速度。

 

apache配置:

1)针对Apache2.0之前的版本,它原本是不支持的,不过可以通过添加第三方的module_gzip模 块来启用
2)针对Apache2.0及之后的版本,Apache提供支持, 不过不叫gzip,而叫mod_deflate
下面 就对Apache2.0及之后的版本作一个说明
1) 去掉#LoadModule headers_module modules/mod_headers.so前面的注释#,
2) 添加LoadModule deflate_module modules/mod_deflate.so
3) 在VirtualHost中添加

<Location "/">
         SetOutputFilter DEFLATE
         BrowserMatch ^Mozilla/4 gzip-only-text/html
         BrowserMatch ^Mozilla/4\.0[678] no-gzip
         BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
         SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
         Header append Vary User-Agent env=!dont-vary
</Location>

 完整的演示:

# 加载deflate模块
LoadModule headers_module modules/mod_headers.so
LoadModule deflate_module modules/mod_deflate.so
<VirtualHost *:80>
     DocumentRoot f:/apacheTest
    <Location "/">
         SetOutputFilter DEFLATE
         BrowserMatch ^Mozilla/4 gzip-only-text/html
         BrowserMatch ^Mozilla/4\.0[678] no-gzip
         BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
         SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
         Header append Vary User-Agent env=!dont-vary
    </Location>
</VirtualHost>

配置日志:

<ifmodule mod_deflate.c>
DeflateCompressionLevel 6
SetOutputFilter DEFLATE
DeflateFilterNote Input instream
DeflateFilterNote Output outstream
DeflateFilterNote Ratio ratio
LogFormat ‘"%r" %{outstream}n/%{instream}n (%{ratio}n%%)’ deflate
#CustomLog logs/deflate_log.log deflate
CustomLog "|bin/rotatelogs.exe logs/deflate_log_%Y%m%d%H.log 720 1" deflate
</ifmodule>

 配置缓存:

/usr/local/apache111/bin/apxs -i -c /home/software/bak/httpd-2.2.3/modules/metadata/mod_expires.c 
/usr/local/apache111/bin/apxs -i -c /home/software/bak/httpd-2.2.3/modules/metadata/mod_headers.c 


vi /usr/local/apache111/bin/apr-1-config 
改 LDFLAGS="" 为 LDFLAGS="-lz" 
/usr/local/apache111/bin/apxs -i -c /home/software/bak/httpd-2.2.3/modules/filters/mod_deflate.c 


httpd.conf配置: 
LoadModule deflate_module modules/mod_deflate.so 
LoadModule headers_module modules/mod_headers.so 
LoadModule expires_module modules/mod_expires.so 

<IfModule mod_expires.c> 
    ExpiresActive On 
    ExpiresDefault A604800 
    ExpiresByType text/css M259200 
    ExpiresByType application/x-javascript M300 
    ExpiresByType image/gif "access plus 2 month" 
    ExpiresByType image/jpeg "access plus 2 month" 
    ExpiresByType image/png "access plus 2 month" 
    ExpiresByType image/x-icon "access plus 2 month" 
    ExpiresByType application/x-shockwave-flash A2592000 
</IfModule> 
<IfModule mod_deflate.c> 
    SetOutputFilter DEFLATE 

#    DeflateFilterNote Input instream 
#    DeflateFilterNote Output outstream 
#    DeflateFilterNote Ratio ratio 

    LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate 
    CustomLog logs/deflate_log deflate 

    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary 
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary 
    SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary 

    AddOutputFilterByType DEFLATE text/* 
    AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript 
    AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp 

    BrowserMatch ^Mozilla/4 gzip-only-text/html 
    BrowserMatch ^Mozilla/4.0[678] no-gzip 
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html 
</IfModule> 

/usr/local/apache111/bin/apachectl -t 
测试httpd.conf配置文件 
 

 

分享到:
评论

相关推荐

    tomcat,apache,iis的GZIP配置

    【GZIP配置详解:Tomcat, Apache, IIS】 GZIP是一种广泛使用的数据压缩...总的来说,无论是在Tomcat、Apache还是IIS服务器上,启用GZIP压缩都是提升Web性能的有效手段,只需要根据各自服务器的配置方式进行适当调整。

    开启TOMCAT6的GZIP压缩

    ### 开启TOMCAT6的GZIP压缩 #### 背景与意义 ...通过上述步骤,可以有效地在TOMCAT6中启用GZIP压缩功能,从而提高网页加载速度和用户满意度。同时,定期检查并更新压缩策略也是保持高性能的关键之一。

    tomcat设置gzip压缩共2页.pdf.zip

    【标题】:“Tomcat设置Gzip压缩”是一个关于在Apache Tomcat服务器上配置Gzip压缩以提高Web应用程序性能的主题。Gzip是一种广泛使用的数据压缩算法,它可以减少HTTP响应的大小,从而加快网页加载速度,降低网络带宽...

    apache-tomcat-8.5配置优化后

    2. **GZIP压缩**:启用`Compression`配置,对响应内容进行GZIP压缩,减小网络传输数据量。 以上就是`apache-tomcat-8.5.5`配置优化后的关键点。正确调整这些设置能显著提升Tomcat的运行效率和服务质量。在实际部署...

    apache-tomcat-9.0.14

    4. **配置管理**:Tomcat的配置主要通过`conf`目录下的多个XML文件进行,如server.xml、web.xml和context.xml,这些文件定义了服务器的全局设置、虚拟主机、Web应用程序和特定上下文的配置。 5. **安全管理**:...

    apache-tomcat-8.5.47-windows-x64.zip

    在本文中,我们将深入探讨与"apache-tomcat-8.5.47-windows-x64.zip"相关的知识,包括Tomcat的概述、版本8.5.47的特点、在Windows操作系统上的安装和配置,以及与Java技术栈的整合。 1. **Apache Tomcat简介** ...

    Apache+tomcat集群环境配置

    - **安装Apache和Tomcat**:首先,确保已安装了Apache HTTP服务器和至少两个Tomcat实例。 - **下载mod_jk**:从Apache官方站点获取mod_jk模块,并将其编译安装到Apache。 - **配置mod_jk**:编辑Apache的配置文件...

    apache-tomcat-7.0.70.tar.gz

    这将创建一个名为`apache-tomcat-7.0.70`的目录,包含所有Tomcat的文件和配置。 **安装和配置**: 1. **移动文件**:将解压后的目录移动到一个合适的系统位置,例如 `/opt` 目录。 2. **设置环境变量**:修改系统...

    tomcat GZIP源码

    标题 "Tomcat GZIP源码" 指的是Apache Tomcat服务器中用于实现GZIP压缩功能的源代码。GZIP是一种广泛使用的数据压缩算法,它能够有效地减小HTTP响应的大小,从而提高网页加载速度,降低网络带宽的消耗。在Tomcat中,...

    apache-tomcat-8.5.83.tar.gz

    4. **部署和配置Tomcat**: - 要在Linux服务器上运行Tomcat,需要将其解压到适当位置,通常是在 `/opt` 或者用户主目录下的 `Software` 文件夹。 - 配置Tomcat涉及修改 `conf/server.xml` 文件,以设置端口、应用...

    tomcat开启gzip

    通过在Tomcat和Apache中启用GZIP压缩,可以显著提高网站的性能。对于文本内容如HTML、CSS和JavaScript文件来说,压缩后可以节省大量的传输带宽,从而提高用户体验。同时,正确配置GZIP压缩也可以帮助减少服务器资源...

    apache-tomcat-8.5.78.tar.gz

    这个"apache-tomcat-8.5.78.tar.gz"文件是一个针对Linux/Unix系统的归档压缩文件,包含了Tomcat 8.5.78版本的所有组件和配置文件。在本文中,我们将深入探讨Tomcat 8.5.x系列的核心特性和安装部署过程。 1. **...

    apache-tomcat-8.5.31.tar.gz

    在解压缩后的文件名称列表中,"apache-tomcat-8.5.31"包含了服务器的主要组件和配置文件。这些文件可能包括: 1. `bin`目录:包含启动、停止和管理Tomcat的脚本。 2. `conf`目录:存储Tomcat的配置文件,如server....

    apache-tomcat-10.0.12.tar.gz

    `.gz`是gzip压缩算法的扩展名,用于减小文件大小。在Linux上,可以使用`tar`命令解压并提取`.tar.gz`文件,例如:`tar -zxvf apache-tomcat-10.0.12.tar.gz`。 4. **Linux x64系统**:x64指的是基于64位AMD或Intel...

    apache-tomcat-8.5.43-windows-x64

    在本文中,我们将深入探讨Apache Tomcat 8.5.43及其与Windows、Apache和Java的关系,以及如何在Windows x64系统上安装和配置。 **Apache Tomcat介绍** Apache Tomcat是由Apache Software Foundation维护的项目,它...

    最新版linux apache-tomcat-7.0.104.tar.gz

    【压缩包子文件的文件名称列表】:解压后,我们通常会得到一个名为"apache-tomcat-7.0.104"的目录,其中包含了运行Apache Tomcat所需的所有组件和配置文件。这个目录可能包括以下几个主要部分: 1. **bin**:包含...

    Linux apache-tomcat-5.5.33.tar.gz

    `apache-tomcat-5.5.33.tar.gz`这个文件意味着它包含了Apache Tomcat 5.5.33的所有组件,包括配置文件、库、可执行文件等,压缩后便于在网络上传输或节省磁盘空间。 解压此文件通常会得到一个名为`apache-tomcat-...

    apache-tomcat-7.0.39.tar.gz

    标题中的"apache-tomcat-7.0.39.tar.gz"表明这是一份使用tar命令打包并使用gzip压缩的文件,这是在Linux系统中常见的归档格式。这个文件包含了Apache Tomcat 7.0.39的所有源代码、配置文件、库和其他必要的组件,供...

    最新版linux apache-tomcat-9.0.52.tar.gz

    总的来说,Apache Tomcat 9.0.52在Linux环境中的部署和管理涉及到一系列步骤,包括安装、配置、安全管理、监控以及与Apache HTTP服务器的集成。了解这些知识对于管理和维护高效的Java Web服务至关重要。

Global site tag (gtag.js) - Google Analytics