| 一. HTTP壓縮概述 HTTP壓縮是在Web伺服器和瀏覽器間傳輸壓縮常值內容的方法。HTTP壓縮採用通用的壓縮演算法如 gzip等壓縮HTML、JavaScript或 CSS檔案。壓縮的最大好處就是降低了網路傳輸的資料量,從而提高用戶端瀏覽器的訪問速度。當然,同時 也會增加一點點伺服器的負擔。Gzip是比較常見的一種HTTP壓縮演算法。 本文介紹的HTTP壓縮方式,採用的是Windows系統設定的方式,優點是效率較高。 二. HTTP壓縮工作原理 Web伺服器處理HTTP壓縮的工作原理如下: Web伺服器接收到瀏覽器的HTTP請求後,檢查瀏覽器是否支援HTTP壓縮; 如果瀏覽器支援HTTP壓縮,Web伺服器檢查請求檔案的尾碼名; 如果請求檔案是HTML、CSS等靜態檔案,Web伺服器到壓縮緩衝目錄中檢查是否已經存在請求檔案的最新壓縮檔; 如果請求檔案的壓縮檔不存在,Web伺服器向瀏覽器返回未壓縮的請求檔案,並在壓縮緩衝目錄中存放請求檔案的壓縮檔; 如果請求檔案的最新壓縮檔已經存在,則直接返回請求檔案的壓縮檔; 如果請求檔案是ASPX等動態檔案,Web伺服器動態壓縮內容並返回瀏覽器,壓縮內容不存放到壓縮緩衝目錄中。 三. IIS 6.0中配置HTTP Gzip壓縮的步驟: 1) 開啟Internet資訊服務(IIS)管理器,右擊"網站"->"屬性",選擇"服務"。在"HTTP壓縮"框中選中"壓縮應用程式檔案"和"壓縮靜態檔案",按需要設定"臨時目錄"和"臨時目錄的最大限制"; 2) 在Internet資訊服務(IIS)管理器,右擊"Web服務擴充"->"增加一個新的Web服務擴充...",在"建立Web服務擴充"框中 輸入副檔名"HTTPCompression",添加"要求的檔案"為C:"WINDOWS"system32"inetsrv"gzip.dll,其中 Windows系統目錄根據您的安裝可能有所不同,選中"設定擴充狀態為允許"; 3) 使用文字編輯器開啟C:"Windows" System32"inetsrv"MetaBase.xml(建議先備份),找到Location = "/LM/W3SVC/Filters/Compression/gzip",如果需要壓縮動態檔案,則將 HcDoDynamicCompression設定為"TRUE",並在HcScriptFileExtensions中增加您要壓縮的動態檔案尾碼 名,如aspx;如果需要壓縮靜態檔案,則將HcDoStaticCompression和HcDoOnDemandCompression設定為 "TRUE",並在HcFileExtensions中增加您需要壓縮的靜態檔案尾碼名,如xml、css等; HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的壓縮率,數字越小壓縮率越低; 4) 編輯完畢後儲存MetaBase.xml檔案;如果檔案無法儲存,則可能IIS正在使用該檔案。開啟"開始"->"管理工具"->"服務",停止"IIS Admin Service"後,即可儲存; 壓縮實際效果如下,簡單的設定竟然有意想不到的效果
| 網址 www.szzgc.com 檢測結果如下: |
| 是否壓縮 |
是 |
| 壓縮類型 |
gzip |
| 原始檔案大小 |
279552 位元組 |
| 壓縮後檔案大小 |
39015 位元組 |
| 壓縮率(估計值) |
86.04% |
|
一. HTTP壓縮概述
HTTP壓縮是在Web伺服器和瀏覽器間傳輸壓縮常值內容的方法。HTTP壓縮採用通用的壓縮演算法如 gzip等壓縮HTML、JavaScript或 CSS檔案。壓縮的最大好處就是降低了網路傳輸的資料量,從而提高用戶端瀏覽器的訪問速度。當然,同時 也會增加一點點伺服器的負擔。Gzip是比較常見的一種HTTP壓縮演算法。
本文介紹的HTTP壓縮方式,採用的是Windows系統設定的方式,優點是效率較高。
二. HTTP壓縮工作原理
Web伺服器處理HTTP壓縮的工作原理如下:
Web伺服器接收到瀏覽器的HTTP請求後,檢查瀏覽器是否支援HTTP壓縮;
如果瀏覽器支援HTTP壓縮,Web伺服器檢查請求檔案的尾碼名;
如果請求檔案是HTML、CSS等靜態檔案,Web伺服器到壓縮緩衝目錄中檢查是否已經存在請求檔案的最新壓縮檔;
如果請求檔案的壓縮檔不存在,Web伺服器向瀏覽器返回未壓縮的請求檔案,並在壓縮緩衝目錄中存放請求檔案的壓縮檔;
如果請求檔案的最新壓縮檔已經存在,則直接返回請求檔案的壓縮檔;
如果請求檔案是ASPX等動態檔案,Web伺服器動態壓縮內容並返回瀏覽器,壓縮內容不存放到壓縮緩衝目錄中。
三. IIS 6.0中配置HTTP Gzip壓縮的步驟:
1) 開啟Internet資訊服務(IIS)管理器,右擊"網站"->"屬性",選擇"服務"。在"HTTP壓縮"框中選中"壓縮應用程式檔案"和"壓縮靜態檔案",按需要設定"臨時目錄"和"臨時目錄的最大限制";
2) 在Internet資訊服務(IIS)管理器,右擊"Web服務擴充"->"增加一個新的Web服務擴充...",在"建立Web服務擴充"框中 輸入副檔名"HTTPCompression",添加"要求的檔案"為C:"WINDOWS"system32"inetsrv"gzip.dll,其中 Windows系統目錄根據您的安裝可能有所不同,選中"設定擴充狀態為允許";
3) 使用文字編輯器開啟C:"Windows" System32"inetsrv"MetaBase.xml(建議先備份),找到Location = "/LM/W3SVC/Filters/Compression/gzip",如果需要壓縮動態檔案,則將 HcDoDynamicCompression設定為"TRUE",並在HcScriptFileExtensions中增加您要壓縮的動態檔案尾碼 名,如aspx;如果需要壓縮靜態檔案,則將HcDoStaticCompression和HcDoOnDemandCompression設定為 "TRUE",並在HcFileExtensions中增加您需要壓縮的靜態檔案尾碼名,如xml、css等; HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的壓縮率,數字越小壓縮率越低;
4) 編輯完畢後儲存MetaBase.xml檔案;如果檔案無法儲存,則可能IIS正在使用該檔案。開啟"開始"->"管理工具"->"服務",停止"IIS Admin Service"後,即可儲存;