Asp.net

為什麼 ASP.NET gzip 壓縮會破壞 CSS?

  • November 5, 2015

我有一個我正在開發的 ASP.NET webforms 應用程序 (3.5 SP1),並嘗試啟用 gzip fpr HTML 和 CSS。我正在使用這個實現(並嘗試了其他一些與 Application_BeginRequest 掛鉤的實現),它似乎正在破壞頁面使用的外部 CSS 文件,但間歇性地……突然所有樣式都會在頁面刷新時消失,保持不變走了一會兒,然後突然又開始工作了。

IE7 和 FF3 都表現出這種行為。使用 Web 開發人員工具欄查看 CSS 時,它返回 jibberish。記憶體控制標頭作為“私有”通過,但我不知道這是否是一個促成因素。

此外,它在 ASP.NET 開發伺服器上執行。也許使用 IIS 會很好,但我在 XP 上開發,它會是 IIS5。

只有 CSS 文件會損壞嗎?JS 文件(或任何其他靜態文本文件)是否可以通過?

如果您直接瀏覽到 CSS 文件,您還可以複製該行為嗎?

我只使用這種方法在 Windows 2003 伺服器的 IIS 上啟用了壓縮:

  1. IIS → 網站 → 屬性 → 服務選項卡,選中兩個框
  2. IIS → Web 服務擴展 → 右鍵點擊,添加新
姓名
Http 壓縮
所需文件
%systemroot%\system32\inetsrv\gzip.dll
  1. IIS → 右鍵點擊頂部節點,Internet 資訊服務,選中啟用直接元數據庫編輯
  2. 備份和編輯%systemroot%\system32\inetsrv\MetaBase.xml
  3. 尋找Location ="/LM/W3SVC/Filters/Compression/gzip"
    • png,cssjs任何其他靜態文件副檔名添加到HcFileExtensions
    • 添加aspx和任何其他可執行擴展HcScriptFileExtensions
    • 節省
  4. 重新啟動 IIS(執行iisreset

如果您有一個 Windows 2003/2008 伺服器可以使用,您可以嘗試這種方法。

引用自:https://stackoverflow.com/questions/22509