背景:
HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求网页后,从服务器端将网 页文件压缩,再下载到客户端,由客户端的浏览器负责解压缩并浏览。相对于普通的浏览过程HTML ,CSS,Javascript , Text ,它可以节省40%左右的流量。更为重要的是,它可以对动态生成的,包括CGI、PHP , JSP , ASP , Servlet,SHTML等输出的网页也能进行压缩,压缩效率惊人
一,对于Tomcat5.0以后的版本是支持对输出内容进行压缩的. 使用的是gzip压缩格式
下面是tomcat5.5.20 中的$tomcat_home$/conf/server.xml的原内容
1 < Connector port ="80" maxHttpHeaderSize ="8192"
2 maxThreads ="150" minSpareThreads ="25" maxSpareThreads ="75"
3 enableLookups ="false" redirectPort ="8443" acceptCount ="100"
4 connectionTimeout ="20000" disableUploadTimeout ="true" URIEncoding ="utf-8" />
5 <!-- Note : To disable connection timeouts, set connectionTimeout value
6 to 0 -->
7
8 <!-- Note : To use gzip compression you could set the following properties :
9
10 compression="on"
11 compressionMinSize="2048"
12 noCompressionUserAgents="gozilla, traviata"
13 compressableMimeType="text/html,text/xml"
14 -->
从上面的第8行内容可以看出,要使用gzip压缩功能,你可以在Connector实例中加上如下属性即可2 maxThreads ="150" minSpareThreads ="25" maxSpareThreads ="75"
3 enableLookups ="false" redirectPort ="8443" acceptCount ="100"
4 connectionTimeout ="20000" disableUploadTimeout ="true" URIEncoding ="utf-8" />
5 <!-- Note : To disable connection timeouts, set connectionTimeout value
6 to 0 -->
7
8 <!-- Note : To use gzip compression you could set the following properties :
9
10 compression="on"
11 compressionMinSize="2048"
12 noCompressionUserAgents="gozilla, traviata"
13 compressableMimeType="text/html,text/xml"
14 -->
1) compression="on" 打开压缩功能
2) compressionMinSize="2048" 启用压缩的输出内容大小,这里面默认为2KB
3) noCompressionUserAgents="gozilla, traviata" 对于以下的浏览器,不启用压缩
4) compressableMimeType="text/html,text/xml" 压缩类型
我这里的配置内容为:
1 <Connector port="80" maxHttpHeaderSize="8192"
2 maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
3 enableLookups="false" redirectPort="8443" acceptCount="100"
4 connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="utf-8"
5 compression="on"
6 compressionMinSize="2048"
7 noCompressionUserAgents="gozilla, traviata"
8 compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
9 <!-- Note : To disable connection timeouts, set connectionTimeout value
10 to 0 -->
11
12 <!-- Note : To use gzip compression you could set the following properties :
13
14 compression="on"
15 compressionMinSize="2048"
16 noCompressionUserAgents="gozilla, traviata"
17 compressableMimeType="text/html,text/xml"
18 -->
19
2 maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
3 enableLookups="false" redirectPort="8443" acceptCount="100"
4 connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="utf-8"
5 compression="on"
6 compressionMinSize="2048"
7 noCompressionUserAgents="gozilla, traviata"
8 compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
9 <!-- Note : To disable connection timeouts, set connectionTimeout value
10 to 0 -->
11
12 <!-- Note : To use gzip compression you could set the following properties :
13
14 compression="on"
15 compressionMinSize="2048"
16 noCompressionUserAgents="gozilla, traviata"
17 compressableMimeType="text/html,text/xml"
18 -->
19
二,对于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中添加
1 <Location "/">
2 SetOutputFilter DEFLATE
3 BrowserMatch ^Mozilla/4 gzip-only-text/html
4 BrowserMatch ^Mozilla/4\.0[678] no-gzip
5 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
6 SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
7 Header append Vary User-Agent env=!dont-vary
8 </Location>
9
2 SetOutputFilter DEFLATE
3 BrowserMatch ^Mozilla/4 gzip-only-text/html
4 BrowserMatch ^Mozilla/4\.0[678] no-gzip
5 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
6 SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
7 Header append Vary User-Agent env=!dont-vary
8 </Location>
9
我这里面有一个完整的演示
1# 加载deflate模块
2LoadModule headers_module modules/mod_headers.so
3LoadModule deflate_module modules/mod_deflate.so
4<VirtualHost *:80>
5 DocumentRoot f:/apacheTest
6 <Location "/">
7 SetOutputFilter DEFLATE
8 BrowserMatch ^Mozilla/4 gzip-only-text/html
9 BrowserMatch ^Mozilla/4\.0[678] no-gzip
10 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
11 SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
12 Header append Vary User-Agent env=!dont-vary
13 </Location>
14</VirtualHost>
2LoadModule headers_module modules/mod_headers.so
3LoadModule deflate_module modules/mod_deflate.so
4<VirtualHost *:80>
5 DocumentRoot f:/apacheTest
6 <Location "/">
7 SetOutputFilter DEFLATE
8 BrowserMatch ^Mozilla/4 gzip-only-text/html
9 BrowserMatch ^Mozilla/4\.0[678] no-gzip
10 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
11 SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
12 Header append Vary User-Agent env=!dont-vary
13 </Location>
14</VirtualHost>
相关推荐
为了提升用户体验并减轻网络带宽的压力,TOMCAT服务器可以通过启用GZIP压缩功能来优化数据传输。GZIP是一种常用的文件格式与数据压缩算法,能够显著减少文件大小,从而提高传输效率。对于使用TOMCAT6作为应用服务器...
【GZIP配置详解:Tomcat, Apache, IIS】 GZIP是一种广泛使用的数据压缩...总的来说,无论是在Tomcat、Apache还是IIS服务器上,启用GZIP压缩都是提升Web性能的有效手段,只需要根据各自服务器的配置方式进行适当调整。
【标题】:“Tomcat设置Gzip压缩”是一个关于在Apache Tomcat服务器上配置Gzip压缩以提高Web应用程序性能的主题。Gzip是一种广泛使用的数据压缩算法,它可以减少HTTP响应的大小,从而加快网页加载速度,降低网络带宽...
标题 "Tomcat GZIP源码" 指的是Apache Tomcat服务器中用于实现GZIP压缩功能的源代码。GZIP是一种广泛使用的数据压缩算法,它能够有效地减小HTTP响应的大小,从而提高网页加载速度,降低网络带宽的消耗。在Tomcat中,...
本文将详细介绍如何在Tomcat服务器中开启GZIP压缩功能。 #### 1. GZIP压缩简介 GZIP是一种广泛使用的数据压缩格式,它使用Lempel-Ziv编码(LZ77)进行压缩。当服务器将数据发送给客户端时,如果浏览器支持GZIP压缩...
在Linux或Mac OS环境下,你可以通过`tar -zxvf apache-tomcat-9.0.14.tar.gz`命令来解压缩文件。在Windows下,可以使用7-Zip或其他支持.tar.gz格式的工具进行解压。 Apache Tomcat的核心功能包括: 1. **Servlet...
对于需要更高级功能,如负载均衡、SSL处理和静态内容服务的场景,可以将Tomcat与Apache HTTP Server通过mod_jk或mod_proxy模块进行集成,Apache作为前端服务器接收请求,并将动态请求转发给后端的Tomcat处理。...
本文将详细介绍在Apache Tomcat服务器上设置GZIP压缩的原理和配置方法。 首先,让我们探讨一下GZIP压缩的原理。GZIP压缩算法基于deflate算法,是一种文件压缩格式,广泛用于在HTTP协议中进行文件压缩。当服务器对...
总结,`apache-tomcat-7.0.70.tar.gz`是针对Linux的Tomcat版本,通过解压、配置和启动,可以在Linux环境中搭建一个Java Web应用服务器。了解如何管理和维护Tomcat对于任何从事Java Web开发的人来说都是至关重要的。
在构建高性能、高可用性的Web应用系统时,Apache与Tomcat的集群配置是常见的解决方案。Apache作为前端服务器,可以通过负载均衡技术将用户请求分发到多个后端的Tomcat实例上,实现请求的分担,同时通过session同步,...
2. **GZIP压缩**:启用`Compression`配置,对响应内容进行GZIP压缩,减小网络传输数据量。 以上就是`apache-tomcat-8.5.5`配置优化后的关键点。正确调整这些设置能显著提升Tomcat的运行效率和服务质量。在实际部署...
标题中的"apache-tomcat-8.5.31.tar.gz"表明这是一个归档文件,采用了tar和gzip两种压缩格式。tar是一种打包工具,用于将多个文件或目录合并成一个单一的文件,而gzip则是一种常见的数据压缩算法,用于减小文件大小...
- 开启压缩和GZIP压缩以减少网络传输。 10. **监控与性能分析**: - 使用JMX(Java Management Extensions)进行服务器监控。 - 利用VisualVM、JProfiler等工具进行Java应用性能分析。 总的来说,Apache Tomcat...
`.gz`是gzip压缩算法的扩展名,用于减小文件大小。在Linux上,可以使用`tar`命令解压并提取`.tar.gz`文件,例如:`tar -zxvf apache-tomcat-10.0.12.tar.gz`。 4. **Linux x64系统**:x64指的是基于64位AMD或Intel...
Apache Tomcat 是一个开源软件,用Java语言编写,主要用于实现Java Servlet和JavaServer Pages(JSP)技术的应用服务器。在本例中,我们讨论的是Apache Tomcat 8.5.83版本的tar.gz压缩包。这个版本是针对Linux系统的...
本文主要讲解了如何在Tomcat中配置多端口域名访问,并且详细介绍了如何开启gzip压缩,以提高Web应用的性能和响应速度。 首先,我们要了解如何在Tomcat中配置不同的端口来访问同一域名。在Web服务器中,端口是用来...
tar用于打包多个文件和目录为一个单一的文件,而gz则是gzip压缩工具的后缀,用于减小文件大小,便于传输和存储。 【标签】"linux","apache","tomcat","7.0.104"这些标签揭示了该压缩包的关键信息。"linux"表明它...
你还可以通过调整Tomcat的配置文件来优化性能,例如限制并发连接数、调整线程池大小、启用GZIP压缩等。 **部署Web应用** 将你的Java Web应用程序(WAR文件)放入Tomcat的webapps目录下,Tomcat会自动解压并部署它。...
9. **集成Apache HTTP服务器**:通过mod_proxy_ajp模块,Apache HTTP Server可以作为前端代理,将请求转发给Tomcat处理,提供负载均衡和更好的性能。 10. **版本升级**:保持Tomcat版本的更新对于确保安全性和利用...