配置IIS 6.0的HTTP壓縮節省帶寬 |
發布時間: 2012/5/18 16:33:57 |
現在雙線機房托管服務器,普遍帶寬小,價格貴,采用http壓縮可以有效節省帶寬。 HTTP 壓縮的好處: 靜態網頁采用HTTP 壓縮,大約可以減少20%的傳輸量。 用戶端使用IE 5.0瀏覽器連線到已經啟用HTTP壓縮IIS 5.0之Web伺服器,才有HTTP壓縮功能。如今,絕大多數的現代瀏覽器支持壓縮技術,但是,具體的壓縮方式取決于瀏覽器。不過你無需對此擔心,因為只有瀏覽器指示支持一種壓縮方式時,Web服務器才會發送壓縮內容。盡管如此,了解一下這種處理機制和不同瀏覽器支持的壓縮類型也是一件有意義的事。 瀏覽器在要求一個網址時,會把支持的壓縮格式通過Accept-Encoding的HTTP頭提交給服務器,IIS或其它Web服務器則從HTTP_ACCEPT_ENCODING環境變量讀取這個信息,這個過程無需你人為干預,IIS在瀏覽器支持壓縮的情況下會自動對發送的內容進行合適的編碼。 下表列出了常見的瀏覽器和它們支持的編碼類型: 瀏覽器 支持的編碼 Firefox 1.0, Mozilla 1.x, Camino gzip, deflate OmniWeb 5.x bzip2, gzip, deflate Safari gzip, deflate Internet Explorer gzip, deflate 使用 HTTP 壓縮: 如果您的站點使用了很大的帶寬,或者您希望更加有效地使用帶寬,請考慮啟用 HTTP 壓縮。HTTP 壓縮在啟用壓縮的瀏覽器和 IIS 之間提供了更短的傳輸時間。既可以只壓縮靜態文件,又可以同時壓縮靜態文件和應用程序響應。如果網絡帶寬受到限制,使用 HTTP 壓縮會很有用(至少對于靜態文件來說),除非處理器利用率已經很高。 動態處理會影響 CPU 資源。對動態響應啟用壓縮后,每次請求動態響應時都會進行壓縮。這意味著并不緩存動態響應,每次請求動態響應時,服務器可能需要更多的 CPU 周期來壓縮和發送響應。已壓縮的靜態響應可以被緩存,因此不會像動態響應那樣影響 CPU 資源。 HTTP 壓縮的工作原理: IIS 在接收到請求時,將檢查瀏覽器是否允許壓縮。然后 IIS 會檢查文件擴展名,以確定請求的文件是否為靜態文件或包含動態內容。如果文件包含靜態內容,IIS 將查看以前是否請求過該文件并且已將該文件以壓縮格式存儲在臨時壓縮目錄中。如果文件沒有以壓縮格式存儲,IIS 會將未壓縮的文件發送到瀏覽器,并在臨時壓縮目錄中添加此文件的壓縮副本。如果文件以壓縮格式存儲,IIS 會將壓縮過的文件發送給瀏覽器。在瀏覽器首次請求之前,所有文件都不壓縮。 如果文件包含動態內容,IIS 將在生成此響應時進行壓縮并將壓縮后的響應發送給瀏覽器。不存儲此文件的副本。 壓縮靜態文件的性能代價較小,而且通常只壓縮一次,因為該文件隨后被存儲在臨時壓縮目錄中。壓縮動態生成的文件的代價要高一些,因為它們并不存儲,并且每次請求時都必須重新生成。在瀏覽器上展開文件的代價非常小。壓縮文件的下載速度更快,所以對于提高使用有限帶寬的網絡連接(如調制解調器連接)的所有瀏覽器的性能特別有好處。 默認情況下,壓縮文件的截止日期是 1997 年 1 月 1 日,以防止服務器將緩存的壓縮文件副本發送到未啟用壓縮的瀏覽器。這也意味著瀏覽器在下一次用戶請求時并不顯示文件的緩存副本,而是返回服務器請求新副本。 啟用 HTTP 壓縮: 如果服務器生成大量的動態內容,則需要考慮壓縮造成的額外處理代價是否值得付出。如果 % 處理器時間計數器已經達到或超過 80%,則不建議啟用 HTTP 壓縮。 測試 HTTP 壓縮: 要創建一個基線,請使用系統監視器記錄幾天內“處理器”對象的 % 處理器時間計數器的值。此計數器有一個總實例以及系統中每個處理器的單獨實例。(如果服務器有多個處理器,應該同時觀察單個處理器和總的處理器情況,以發現工作量分配不平衡之處)此外,還應該記錄“網絡接口”對象的發送的字節數/秒計數器。 啟用壓縮并繼續在一段時間內記錄這些計數器的值,最好是幾天,這樣就能得到好的對比依據。 將未壓縮時的值和壓縮過的值相比較。 現在引入正題, 如何配置 Microsoft Internet Information Server 6.0 實現 HTTP 壓縮: 有很多第三方工具可以實現 HTTP 壓縮,但都是需要購買的,價格在 100 到 300 美圓不等,如:http://www.port80soft.com/的 HTTPZip,如果不希望額外花錢實現這一功能的話,只好自己辛苦一下,接著看吧: 1.首先備份 IIS 的配置文件, 復制 C:\Windows\system32\inetsrv\metabase.xml 到另外的備份文件夾中. C:\Windows\system32\inetsrv\metabase.xml 是 IIS 的核心配置文件,該文件的完整性一但被破壞,IIS 將無法正常運行,嚴重到需要重新安裝系統. 2. 在開始菜單中啟動 Internet 信息服務(IIS)管理器,右鍵點擊“網站”屬性,打開“服務”選項卡,勾選“HTTP 壓縮”的兩個選項。“臨時目錄”和“臨時目錄最大容量”可根據需要自行設置。設置完成后點擊確定。 3.右鍵點擊“網站”下方的 “Web服務擴展”,添加一個新的Web服務擴展,擴展名填寫為“HTTP Compression”或其他,都可以。“要求的文件”添加:c:\windows\system32\inetsrv\gzip.dll ,并勾選“設置擴展狀態為允許”,完成后點擊確定。 4.下面的步驟有些復雜,如果沒有確定的把握能理解,最好不要嘗試,右鍵點擊“Internet 信息服務的”“本地計算機”屬性,勾選“允許直接編輯配置數據庫”并確定。 5. 在開始菜單中運行 notepad C:\Windows\system32\inetsrv\metabase.xml ,打開metabase.xml 文件,請在任何改動前再次確認該文件已經備份。 6. 搜索并找到 metabase.xml 文件中的 本文出自:億恩科技【www.endtimedelusion.com】 |