解決關于IIS gzip不能正常啟用的問題
更新時間:2012年11月29日 19:49:04 作者:
今天配置服務器的時候, 為了更快的速度,我們打算啟用gzip,按照腳本的之家方法平時都是立即可以使用,這次確不行,通過下面的方法解決了,特分享下,方便需要的朋友
1、gzip的下載安裝 一鍵開啟gzip
獨立主機/VPS 一鍵開啟IIS的GZIP方法 http://www.fzitv.net/article/30151.htm
2、安裝成功后,基本上是可以的, 一般情況下就是 gzip緩存目錄c:\windows\IIS Temporary CompressedFiles 目錄,我們建議放到d盤,并給everyone全部權限即可。
重新啟動iis即可。
IIS啟用Gzip壓縮造成OpenFlashChart不能正常顯示問題及解決方法
在.NET中使用OpenFlashChart控件顯示圖表時,誰會想到圖表顯示正常與否竟然和服務器IIS是否啟用了Gzip壓縮有關呢?
兩個站點用著同一套程序,一個站點OpenFlashChart圖表能正常顯示,另一個站點卻顯示為“ioerror Error #2032”,而且這個問題只出現在IE6瀏覽器中,火狐和IE7中都能正常顯示,是什么原因造成的呢?
百度和Google一番,才查到原因是服務器上采用了Gzip壓縮優(yōu)化網站和no-cache同時出現造成的,解決方法是在返回的頁面里增加HTTP頭,示例代碼如下:
復制代碼 代碼如下:
Response.Clear();
//Response.CacheControl = "no-cache";
//用這句代替上面一句
Response.AppendHeader("Cache-Control", "no-cache, no-store, must-revalidate, max-age=-1");
Response.Write(chart.ToString()); //輸出openflashchat流
Response.End();
以下是詳細介紹,適合手工配置gzip的朋友
一. HTTP壓縮概述
HTTP壓縮是在Web服務器和瀏覽器間傳輸壓縮文本內容的方法。HTTP壓縮采用通用的壓縮算法如gzip等壓縮HTML、JavaScript或 CSS文件。壓縮的最大好處就是降低了網絡傳輸的數據量,從而提高客戶端瀏覽器的訪問速度。當然,同時也會增加一點點服務器的負擔。Gzip是比較常見的 一種HTTP壓縮算法。
本文介紹的HTTP壓縮方式,采用的是Windows系統(tǒng)設置的方式,優(yōu)點是效率較高。
二. HTTP壓縮工作原理
Web服務器處理HTTP壓縮的工作原理如下:
Web服務器接收到瀏覽器的HTTP請求后,檢查瀏覽器是否支持HTTP壓縮;
如果瀏覽器支持HTTP壓縮,Web服務器檢查請求文件的后綴名;
如果請求文件是HTML、CSS等靜態(tài)文件,Web服務器到壓縮緩沖目錄中檢查是否已經存在請求文件的最新壓縮文件;
如果請求文件的壓縮文件不存在,Web服務器向瀏覽器返回未壓縮的請求文件,并在壓縮緩沖目錄中存放請求文件的壓縮文件;
如果請求文件的最新壓縮文件已經存在,則直接返回請求文件的壓縮文件;
如果請求文件是ASPX等動態(tài)文件,Web服務器動態(tài)壓縮內容并返回瀏覽器,壓縮內容不存放到壓縮緩存目錄中。
小編在網上找過很多的資料,gzip對搜索引擎Seo不會有影響,并且Baidu也明確表示可以解析Gzip數據。
我們用站長站的工具來檢測一下Gzip以后的效果:
不過注意 GZIP一般只對 Html 之類的文本有效果,而對已經壓縮過了的圖片如 gif,jpg 等是沒有效果的。
下載我們來一步一步教大家如何打開IIS的Gzip
1. 打開Internet信息服務(IIS)管理器,右擊“網站”-》“屬性”,選擇“服務”。在“HTTP壓縮”框中選中“壓縮應用程序文件”和“壓縮靜態(tài)文件”,按需要設置“臨時目錄”和“臨時目錄的最大限制”;
2. 在Internet信息服務(IIS)管理器,右擊“Web服務擴展”-》“增加一個新的Web服務擴展。。.”,在“新建Web服務擴展”框中輸入擴展名“HTTP Compression”,添加“要求的文件”為c:\WINDOWS\system32\inetsrv\gzip.dll,其中Windows系統(tǒng)目錄根據您的安裝可能有所不同,選中“設置擴展狀態(tài)為允許”;
3. 使用文本編輯器打開c:\Windows\System32\inetsrv\MetaBase.xml(建議先備份),
在打開之前請注意:
1. 在編輯MetaBase.xml前需要停止IIS,可以使用 微軟鍵+R運行:net stop iisadmin
2. 修改完成后重啟VPS
找到Location =“/LM/W3SVC/Filters/Compression/gzip用于設置gzip壓縮,
找到Location =”/LM/W3SVC/Filters/Compression/deflate“用于設置deflate壓縮。 上面兩個節(jié)點緊挨著。并且設置的屬性相同。
如果需要壓縮動態(tài)文件,則將HcDoDynamicCompression設置為”TRUE“,
并在HcScriptFileExtensions中增加您要壓縮的動態(tài)文件后綴名,如aspx;
如果需要壓縮靜態(tài)文件,則將HcDoStaticCompression和HcDoOnDemandCompression設置為”TRUE“,
并在HcFileExtensions中增加您需要壓縮的靜態(tài)文件后綴名,如xml、css等;
HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的壓縮率,數值在0-10, 默認為0。
HcDynamicCompressionLevel屬性說明:HcDynamicCompressionLevel Metabase Property
HcOnDemandCompLevel 屬性說明:HcOnDemandCompLevel Metabase Property
說明: 這兩個屬性值一般推薦設置為9, 具有最佳性價比。
關鍵的配置來了:導致GZIP無法生效就是下面的配置網上沒有提到。
HcNoCompressionForHttp10="TRUE"
HcNoCompressionForProxies="TRUE"
改為
HcNoCompressionForHttp10="FALSE"
HcNoCompressionForProxies="FALSE"
相關文章
Windows Server 2022 升級:WSL 子系統(tǒng)全新體驗
Windows Server 2022 是微軟最新發(fā)布的服務器操作系統(tǒng),它提供了許多強大的功能和性能優(yōu)化,本文將介紹如何在 Windows Server 2022 上安裝 WSL 子系統(tǒng),以及配置和使用的步驟,需要的朋友可以參考下2023-10-10
win10使用清華源快速安裝pytorch-GPU版(推薦)
這篇文章主要介紹了win10使用清華源快速安裝pytorch-GPU版,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-10-10
Windows server 2008搭建php運行環(huán)境圖文詳解(php5.3)
這篇文章主要為大家分享下Windows server 2008搭建php運行環(huán)境的步驟,需要的朋友可以參考下2013-12-12
win2003 jsp運行環(huán)境架設心得(jdk+tomcat)
這幾天一直研究架設JSP服務器,之前一切都是默認安裝,能成功;能看到一只貓,可真正要上線時,要實現多站點就一直404不行;不知道百度跟google將近一天都不行,看了N多網頁嘗試不行2012-12-12
Windows Server 2016+Sql Server 2016搭建Alw
集群規(guī)劃節(jié)點加域重啟并用本地管理員賬戶重新登陸后,開始安裝故障轉移集群功能(WSFC),并創(chuàng)建故障轉移集群2023-05-05
Windows Server 2012顯示或隱藏桌面上的通用圖標教程圖解
Windows Server 2012與Windows Server 2008 在顯示或隱藏桌面上的通用圖標是不同的。這篇文章通過圖文并茂的形式給大家介紹Windows Server 2012顯示或隱藏桌面上的通用圖標,感興趣的朋友一起看看吧2018-12-12
由于這臺計算機沒有終端服務器客戶端訪問許可證,遠程會話被中斷
問題:使用[遠程桌面連接]到win2003 server 消息:[由于這臺計算機沒有終端服務器客戶端訪問許可證,遠程會話被中斷。請跟服務器管理員聯系。] 原因:許可證服務器中可能沒有剩余的“每設備 CAL”來頒發(fā)。2009-06-06

