July 1, 2011
An IT and Web Development Blog
July 1, 2011
I recently configured compression on a IIS 7.5 website, but it took a few steps. I was not able to find all the steps required in one place so I thought I would post them here.
The first step is to make sure static compression is enabled in your ApplicationHost.config file like so:
<httpCompression directory="%SystemDrive%inetpubtempIIS Temporary Compressed Files" minFileSizeForComp="0"> <scheme name="gzip" dll="%Windir%system32inetsrvgzip.dll" /> <staticTypes><add mimeType="text/*" enabled="true" /> <add mimeType="message/*" enabled="true" /> <add mimeType="application/javascript" enabled="true" /> <add mimeType="*/*" enabled="false" /> </staticTypes> </httpCompression>
Next we must change the javascript mime type in the ApplicationHost.config to:
<system.webServer> <staticContent> <remove fileExtension=".js" /> <mimeMap fileExtension=".js" mimeType="text/javascript" /> </staticContent> </system.webServer>
The last step is to run an appcmd command that tells IIS to compress all pages not just pages accessed twice within 10 seconds, which is the default.
%windir%system32inetsrvappcmd.exe set config -section:system.webServer/serverRuntime -frequentHitThreshold:1
Now we have static compression enabled in IIS 7.5.
Kevin