gzip的介紹以及web伺服器對檔案壓縮的支援
阿新 • • 發佈:2019-02-12
GZIP和HTTP
GZIP是一種檔案壓縮標準,能夠大幅度的減少檔案本身大小和佔用的儲存空間。現今已經成為Internet 上使用非常普遍的一種資料壓縮格式,或者說一種檔案格式。
通過HttpWatch或者burp suite等抓包工具,可以檢視http頭部 Accept-Encoding的值,如果該欄位顯示的是"gzip,deflate",就代表該瀏覽器能夠識別gzip格式的檔案。
這樣伺服器就可以將檔案壓縮成gzip,以便減少瀏覽器下載檔案的時間。gzip和伺服器對處理gzip過程簡介:
靜態壓縮和動態壓縮
可以預先將html/css等檔案,使用gzip工具直接壓縮,將壓縮後的檔案放在伺服器,瀏覽器直接引用壓縮後的檔案就可以了,這樣可以節省動態壓縮帶來的開銷。比如gzip的實現
1、java jdk內建對gzip的支援,可以通過使用GZIPInputStream和GZIPOutputStream進行壓縮和解壓縮。
這2個類使用都比較簡單,這裡不再贅述。
weblogic的配置可以參考http://www.blogjava.net/xggc63/archive/2011/05/25/342979.html
jboss的配置如下,在jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer\server.xml中新增
<Connector port="8080" address="${jboss.bind.address}" maxThreads="250" maxHttpHeaderSize="8192" emptySessionPath="true" protocol="HTTP/1.1" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="utf-8" compressableMimeType="text/html,text/xml,text/css,text/javascript,application/x-javascript,application/javascript" compressionMinSize="2048" noCompressionUserAgents="gozilla,traviata" />