`

在Tomcat上直接配置GZIP压缩

阅读更多

tomcat本身在5.0版本以后是支持内容压缩的,它使用的是gzip的压缩格式,我们先来看Tomcat文档中对下面两个配置的注解(红色粗体字部分)

compressableMimeType

The value is a comma separated list of MIME types for which HTTP compression may be used. The default value istext/html,text/xml,text/plain.

compression

The Connector may use HTTP/1.1 GZIP compression in an attempt to save server bandwidth. The acceptable values for the parameter is "off" (disable compression), "on" (allow compression, which causes text data to be compressed), "force" (forces compression in all cases), or a numerical integer value (which is equivalent to "on", but specifies the minimum amount of data before the output is compressed). If the content-length is not known and compression is set to "on" or more aggressive, the output will also be compressed. If not specified, this attribute is set to "off".

这两个配置是在servere.xml中的Connector部分,第一个配置是指定Tomcat压缩哪些内容,第二个配置是指示Tomcat是否启用压缩,默认是关闭的。所以假设我们要让Tomcat在默认的8080端口上的输出内容进行压缩,我们的配置应该是:

    <Connector port="8080" protocol="HTTP/1.1" 
               maxThreads="150" connectionTimeout="20000" 
               redirectPort="8443" compression="on"/>

一旦启用了这个压缩功能后,我们怎么来测试压缩是否有效呢?首先Tomcat是根据浏览器请求头中的accept-encoding来判断浏览器是否支持压缩功能,如果这个值包含有gzip,就表明浏览器支持gzip压缩内容的浏览,所以我们可以用httpclient来写一个这样的简单测试程序

package com.liusoft.dlog4j.test;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.GetMethod;

/**
 * HTTP客户端测试类
 * @author liudong
 */
public class HttpTester {

 /**
  * @param args
  */
 public static void main(String[] args) throws Exception{
  HttpClient http = new HttpClient();  
  GetMethod get = new GetMethod("http://www.dlog.cn/js/prototype.js");
  try{
   get.addRequestHeader("accept-encoding", "gzip,deflate");
   get.addRequestHeader("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Alexa Toolbar; Maxthon 2.0)");
   int er = http.executeMethod(get);
   if(er==200){
    System.out.println(get.getResponseContentLength());
    String html = get.getResponseBodyAsString();
    System.out.println(html);
    System.out.println(html.getBytes().length);
   }
  }finally{
   get.releaseConnection();
  }
 }

}

执行这个测试程序,看看它所输出的是什么内容,如果输出的是一些乱码,以及打印内容的长度远小于实际的长度,那么恭喜你,你的配置生效了,你会发现你网站的浏览速度比以前快多了。

另外你最好对网站所用的javascript和css也进行压缩:)

分享到:
评论

相关推荐

    Tomcat下,使用gzip压缩数据

    在Tomcat中,配置gzip压缩主要涉及到修改`conf/server.xml`文件。在这个文件中,我们需要找到`&lt;Connector&gt;`标签,这个标签定义了Tomcat服务器的连接器,用于处理HTTP请求。在`&lt;Connector&gt;`标签内添加或修改以下参数...

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

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

    开启TOMCAT6的GZIP压缩

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

    tomcat,apache,iis的GZIP配置

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

    tomcat GZIP源码

    在Tomcat中,GZIP压缩的实现涉及到以下几个关键知识点: 1. **HTTP压缩机制**:GZIP压缩是通过设置HTTP响应头中的`Content-Encoding`字段为`gzip`来告知客户端(浏览器)服务器返回的内容已被压缩。客户端收到这样...

    Tomcat配置gzip压缩提高浏览网站的速度

    Tomcat服务器通过配置gzip压缩,可以显著提高网站内容的传输效率,从而加快用户浏览网站的速度。 首先,需要了解HTTP压缩的概念。HTTP压缩是一种使用各种算法来减少文件大小,以减少HTTP传输过程中的数据量的技术。...

    tomcat开启gzip

    ### 开启Tomcat中的GZIP压缩 在现代Web开发中,提高网站性能是至关重要的一步。...同时,正确配置GZIP压缩也可以帮助减少服务器资源的消耗。希望本文能帮助您更好地理解如何在实际应用中启用GZIP压缩。

    EhCache开启gzip压缩功能

    2. **EhCache自带的压缩功能**:EhCache自身提供了集成gzip压缩的功能,可以在配置文件中开启。这通常涉及到修改`ehcache.xml`配置文件,设置相应的压缩策略。例如,可以为特定的缓存区域指定压缩策略,或者全局开启...

    Tomcat多端口域名访问并配置开启gzip压缩方法

    这些操作对于希望优化Tomcat配置的开发者来说非常实用。 最后,如果读者在实施上述配置时遇到问题,可以留言询问。作者承诺会尽快回复,帮助读者解决问题。同时,作者对于支持其网站的读者表示感谢,并鼓励大家转载...

    apache-tomcat-8.5配置优化后

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

    tomcat设置gzip压缩的原理及配置方法

    本文将详细介绍在Apache Tomcat服务器上设置GZIP压缩的原理和配置方法。 首先,让我们探讨一下GZIP压缩的原理。GZIP压缩算法基于deflate算法,是一种文件压缩格式,广泛用于在HTTP协议中进行文件压缩。当服务器对...

    Tomcat7中开启gzip压缩功能的配置方法

    在Tomcat 7服务器中开启gzip压缩功能,主要通过修改Tomcat的配置文件来实现。具体而言,就是编辑Tomcat安装目录下的`conf`文件夹中的`server.xml`文件。`server.xml`是Tomcat服务器的主要配置文件,其中定义了服务的...

    GZIP压缩Tomcat并提升web性能过程图解

    本文将深入探讨如何在Tomcat服务器上启用GZIP压缩以提高Web性能,并提供详细的过程图解。GZIP压缩是一种常见的HTTP协议支持的数据压缩机制,能够显著减少网络传输的数据量,从而加快网页加载速度,降低服务器带宽...

    设置tomcat启用gzip压缩的具体操作方法

    启用Tomcat的gzip压缩,需要修改`%TOMCAT_HOME%/conf/server.xml`配置文件中的`&lt;Connector&gt;`节点。具体步骤如下: 1. 打开压缩功能:在`&lt;Connector&gt;`节点中添加`compression="on"`,这表示开启gzip压缩。 2. 设置...

    Tomcat配置方法.rar

    《深入解析Tomcat配置》 Tomcat是一款广泛应用的开源Java Servlet容器,它是Apache软件基金会Jakarta项目的一部分。作为Web服务器,Tomcat能够处理HTTP协议,支持Servlet和JSP技术,是开发和部署Java Web应用的理想...

    J2EE gzip压缩

    1. **服务器配置**:大多数现代Web服务器(如Apache Tomcat、Jetty、IBM WebSphere等)都支持配置gzip压缩。通过修改服务器配置文件(如Tomcat的`server.xml`),我们可以开启gzip压缩并设置相应的参数,如最小压缩...

    Nginx与Tomcat集群配置 Redis配置

    ### Tomcat配置 10. **Tomcat集群配置**:在每个Tomcat实例的`server.xml`中配置相同的`Cluster`和`Engine`,确保会话同步。使用`Manager`元素来实现Session复制。 11. **集成Redis**:为了实现Session共享,可以...

Global site tag (gtag.js) - Google Analytics