原文: http://zlei12.go.nease.net/
1. HTTP壓縮概述
HTTP壓縮是在Web伺服器和流覽器間傳輸壓縮文本內容的方法。HTTP壓縮採用通用的壓縮演算法如gzip等壓縮HTML、JavaScript或CSS檔。
2. HTTP壓縮工作原理
Web伺服器處理HTTP壓縮的工作原理如下:
- Web伺服器接收到流覽器的HTTP請求後,檢查流覽器是否支持HTTP壓縮;
- 如果流覽器支援HTTP壓縮,Web伺服器檢查請求檔的尾碼名;
- 如果請求檔是HTML、CSS等靜態檔,Web伺服器到壓縮緩衝目錄中檢查是否已經存在請求檔的最新壓縮檔;
- 如果請求檔的壓縮檔不存在,Web伺服器向流覽器返回未壓縮的請求檔,並在壓縮緩衝目錄中存放請求檔的壓縮檔;
- 如果請求檔的最新壓縮檔已經存在,則直接返回請求檔的壓縮檔;
- 如果請求檔是ASPX等動態檔,Web伺服器動態壓縮內容並返回流覽器,壓縮內容不存放到壓縮緩存目錄中。
3. IIS 6.0中配置HTTP壓縮的步驟
IIS 6.0中配置HTTP壓縮的步驟如下:
- 打開Internet資訊服務(IIS)管理器,右擊"網站"->"屬性",選擇"服務"。在"HTTP壓縮"框中選中"壓縮應用程式檔"和"壓縮靜態檔",按需要設置"臨時目錄"和"臨時目錄的最大限制";
- 在Internet資訊服務(IIS)管理器,右擊"Web服務擴展"->"增加一個新的Web服務擴展...",在"新建Web服務擴展"框中輸入副檔名"HTTP Compression",添加"要求的檔"為C:\WINDOWS\system32\inetsrv\gzip.dll,其中Windows系統目錄根據您的安裝可能有所不同,選中"設置擴展狀態為允許";
- 使用文本編輯器打開C:\Windows\System32\inetsrv\MetaBase.xml(建議先備份),找到Location ="/LM/W3SVC/Filters/Compression/gzip",如果需要壓縮動態檔,則將HcDoDynamicCompression設置為"TRUE",並在HcScriptFileExtensions中增加您要壓縮的動態檔尾碼名,如aspx;如果需要壓縮靜態檔,則將HcDoStaticCompression和HcDoOnDemandCompression設置為"TRUE",並在HcFileExtensions中增加您需要壓縮的靜態檔尾碼名,如xml、css等;HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的壓縮率,數位越小壓縮率越低;
- 編輯完畢後保存MetaBase.xml文件;如果檔無法保存,則可能IIS正在使用該檔。打開"開始"->"管理工具"->"服務",停止"IIS Admin Service"後,即可保存;
- 最後,重新啟動IIS。可以到HTTP壓縮測試網站驗證結果。
作者: 小雞射手 參考文獻:微軟IIS 6.0 Operation Guide
|