जवाबों:
आप पूरी तरह से अपनी Web.config
फ़ाइल में GZIP संपीड़न को सक्षम कर सकते हैं । यह विशेष रूप से उपयोगी है यदि आप साझा होस्टिंग पर हैं और IIS को सीधे कॉन्फ़िगर नहीं कर सकते हैं, या आप चाहते हैं कि आपका कॉन्फ़िगरेशन आपके द्वारा लक्षित सभी वातावरणों के बीच ले जाए।
<system.webServer>
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/>
<dynamicTypes>
<add mimeType="text/*" enabled="true"/>
<add mimeType="message/*" enabled="true"/>
<add mimeType="application/javascript" enabled="true"/>
<add mimeType="*/*" enabled="false"/>
</dynamicTypes>
<staticTypes>
<add mimeType="text/*" enabled="true"/>
<add mimeType="message/*" enabled="true"/>
<add mimeType="application/javascript" enabled="true"/>
<add mimeType="*/*" enabled="false"/>
</staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" doDynamicCompression="true"/>
</system.webServer>
यह देखने के लिए कि संपीड़न काम कर रहा है या नहीं, फ़ायरफ़ॉक्स के लिए Chrome या Firebug में डेवलपर टूल का उपयोग करें और सुनिश्चित करें कि HTTP प्रतिसाद शीर्ष लेख सेट किया गया है:
Content-Encoding: gzip
ध्यान दें कि यह हेडर उपस्थित नहीं होगा यदि प्रतिक्रिया कोड 304 (संशोधित नहीं) है। यदि ऐसा है, तो एक पूर्ण रिफ्रेश (होल्ड शिफ्ट या नियंत्रण जब आप रिफ्रेश बटन दबाते हैं) करें और फिर से जांचें।
.js
नहीं। साथ ही, जोड़ने की कोशिश की application/x-javascript
। टॉमकैट के साथ एक साथ उपयोग करना, इसलिए directory
पैरामीटर को हटा दिया गया ।
आपको Windows विशेषताएँ नियंत्रण कक्ष में सुविधा को सक्षम करने की आवश्यकता होगी:
ग्लोबल Gzip HttpModule में
यदि आपके पास अंतिम IIS उदाहरण (साझा होस्टिंग ...) तक पहुंच नहीं है, तो आप एक HttpModule बना सकते हैं जो इस कोड को हर HttpApplication.Begin_Request घटना में जोड़ता है:
HttpContext context = HttpContext.Current;
context.Response.Filter = new GZipStream(context.Response.Filter, CompressionMode.Compress);
HttpContext.Current.Response.AppendHeader("Content-encoding", "gzip");
HttpContext.Current.Response.Cache.VaryByHeaders["Accept-encoding"] = true;
परिक्षण
कुडोस, कोई भी समाधान परीक्षण के बिना नहीं किया जाता है। मैं फ़ायरफ़ॉक्स प्लगइन " लाइवहेडर्स " का उपयोग करना पसंद करता हूं यह ब्राउज़र और सर्वर के बीच संपीड़न, फ़ाइल आकार (जो आप सर्वर पर फ़ाइल आकार की तुलना कर सकते हैं) सहित हर http संदेश के बारे में सभी जानकारी दिखाता है।
अगर आप डायनेमिक पेज (जैसे aspx) को गज़ब करने की कोशिश कर रहे हैं और यह काम नहीं कर रहा है, तो शायद इसका कारण यह है कि विकल्प सक्षम नहीं है (आपको विंडोज फीचर्स का उपयोग करके डायनामिक कंटेंट कंप्रेशन मॉड्यूल को इंस्टॉल करने की आवश्यकता है):
http://support.esri.com/en/knowledgebase/techarticles/detail/38616
कुछ भी स्थापित किए बिना परीक्षण करने का एक और आसान तरीका, न तो यह IIS संस्करण पर निर्भर है। इस लिंक पर अपना url पेस्ट करें - SEO Checkup
Web.config में जोड़ने के लिए: http://www.iis.net/configreference/system.webserver/hpppression
फ़ायरबग एडऑन के साथ फ़ायरफ़ॉक्स स्थापित करने का प्रयास करें। मैं इसका उपयोग कर रहा हूँ; वेब डेवलपर के लिए बढ़िया टूल।
मैंने web.config का उपयोग करके अपने IIS7 में Gzip संपीड़न को सक्षम किया है।