本人推薦的一個模組,同樣可以壓縮aspx頁面請求的所有資源及支援強大自訂功能的壓縮模組,與HttpCompress6.0一樣能自訂要壓縮那種類型的資源及不壓縮那種類型的資源、也可定義要壓縮指定的頁面或不壓縮指定的頁面,並且還有開啟Cache資源的功能及指定壓縮目錄的強大功能,另外也不會像HttpCompress6.0會出現axd檔案無效的BUG,這樣此壓縮模組就能完美支援各種ajax架構!!
<addname="WebResourceCompression"type="WebResourceCompression.WebResourceCompressionModule"/><addname="PageCompressionModule"type="Compression.PageCompressionModule,Compression.PageCompressionModule"/> <configSections> <sectionGroupname="DCWeb"> <sectionname="HttpCompress"type="DC.Web.HttpCompress.Configuration, DC.Web.HttpCompress"/> </sectionGroup> </configSections> <DCWeb> <HttpCompress compressionType="GZip"><!--設定是否啟用cachefiles功能,並指定cache目錄,如果刪掉這行配置的話就自動預設為false(不開啟cache)--> <CacheSettingscacheFiles="true"path="cache"/><!--設定jspath及csspath,如果刪除掉這行配置的話就會使用預設值--> <PathSettingsjsPath="javascript"cssPath="css"/><!--配置要壓縮何種類型的資源,這裡設定只壓縮html,即只有aspx頁面及*.axd資源會被壓縮,其它的資源(片,CSS等)將不被壓縮!例:如果要壓縮gif,請添加<add mime="image/gif"/>,壓縮jpg則添加<add mime="image/jpeg"/>--> <IncludedMimeTypes> <addmime="text/html"/> </IncludedMimeTypes> <!--配置不壓縮何種類型資源請使用: <ExcludedMimeTypes> <add mime="text/html" /> </ExcludedMimeTypes> 注意:ExcludedMimeTypes及IncludedMimeTypes只需要配置一個就可以,如果像上面那樣配置ExcludeMimeTypes的話,則表明除html類型的資源外,其它資源都會被壓縮--> <ExcludedPaths><!--設定不啟用壓縮的頁面路徑,下面設定了nocompress目錄下的default.aspx頁面將不會啟用壓縮功能,但其它頁面則正常啟用壓縮--> <addpath="~/NoCompress/Default.aspx"/> </ExcludedPaths> </HttpCompress> </DCWeb> <!--The js.axd and css.axd must be enabled to allow javascript. and css compression--> <httpHandlers><!--如果不需要使用到此功能的話可刪掉此配置節--> <addverb="*"path="js.axd,css.axd" type="DC.Web.HttpCompress.CompressionHandler,DC.Web.HttpCompress"/> </httpHandlers> <!--The compression module must be enabled for the WebResource.axd to be compressed--> <httpModules> <addname="ScriptModule"type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/><!--設定啟用壓縮模組的參數--> <addname="HttpCompressModule" type="DC.Web.HttpCompress.HttpModule,DC.Web.HttpCompress"/> </httpModules>
使用:請看後面的CompressionModule壓縮模組實際使用及效能測試!
優點:開放原始碼,強大的自訂功能,能壓縮多種資源,能完美支援各種ajax架構!
缺點:使用複雜,僅支援asp.net2.0或以上版本!
綜上所述,各種壓縮模組都能達到最佳化頁面的作用,但由於壓縮的過程是發生在伺服器一端,所以啟用這些壓縮會消耗一點點伺服器資源,不過一般來說壓縮只發生在用戶端第一次訪問頁面的時候,因為之後瀏覽器本身cache了頁面及資源的關係,再次重新整理訪問的時候就不會再佔用伺服器資源進行壓縮了,所以對於網站頁面體積龐大的開發人員來說,啟用壓縮功能絕對是物有所值的,畢竟頁面體積更小,載入就會更快!
使用:請看後面的CompressionModule壓縮模組實際使用及效能測試!
優點:開放原始碼,強大的自訂功能,能壓縮多種資源,能完美支援各種ajax架構!
缺點:使用複雜,僅支援asp.net2.0或以上版本!
<CacheSettings cacheFiles="true" path="cache"/>
那麼項目下就必須存在cache這個目錄,否則的話會出錯,如果項目不想增加這個目錄,只需要將這個配置節刪掉即可!