Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have been unable to get GZIP compression working on my IIS7.5 server. I have tried all the suggestions online, including here at ServerFault and no matter what, the trace always comes back stating "COMPRESSION_DISABLED", but I don't know why it's disabled.

I have the following in my applicationHost.config:

    <httpCompression directory="C:\inetpub\temp\IIS Temporary Compressed Files" minFileSizeForComp="2000">
        <scheme name="gzip" dll="C:\Windows\system32\inetsrv\gzip.dll" />
        <dynamicTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/x-javascript" enabled="true" />
            <add mimeType="*/*" enabled="true" />
        </dynamicTypes>
        <staticTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/x-javascript" enabled="true" />
            <add mimeType="application/atom+xml" enabled="true" />
            <add mimeType="application/xaml+xml" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </staticTypes>
    </httpCompression>

    <urlCompression />

My DefaultAppPool.config:

    <urlCompression dynamicCompressionBeforeCache="true" />

    <httpCompression directory="C:\inetpub\temp\IIS Temporary Compressed Files" doDiskSpaceLimiting="false" maxDiskSpaceUsage="1000" minFileSizeForComp="0" noCompressionForHttp10="false" noCompressionForProxies="false" noCompressionForRange="false" staticCompressionEnableCpuUsage="80" dynamicCompressionEnableCpuUsage="80">
        <dynamicTypes>
            <add mimeType="*/*" enabled="true" />
            <add mimeType="text/html" enabled="true" />
        </dynamicTypes>
        <staticTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/x-javascript" enabled="true" />
            <add mimeType="application/atom+xml" enabled="true" />
            <add mimeType="application/xaml+xml" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </staticTypes>
    </httpCompression>

Every option in the IIS manager I've looked at shows compression enabled. Some stuff is coming back compressed, but it's only PHP content that PHP has compressed before handing it off to IIS.

According to the traces, all the requests are hitting the Static or DynamicCompressionModule but it's always failing as "COMPRESSION_DISABLED". Is there any way beyond the tracing to determine why IIS is disabling the compression?

I've run the command

appcmd list config "http://example.com/index.html"

to see the complete configuration for that URL, and according to the dumped configuration, the HTTP and URL compression settings shown above are incorporated and there's no mention of disabling compression.

Is it possible another module is causing compression to be disabled? Output caching?

So I'm pretty stumped here on what could be the problem.

share|improve this question
add comment

1 Answer

I don't see doDynamicCompression or doStaticCompression=true listed there; are they set? If so, at what level?

share|improve this answer
    
According to the documentation, those are on by default and when I check the settings in the Configuration Editor, they show as True. –  Chris Thompson Nov 11 '11 at 2:49
    
Right; what handler is used to process the file? –  TristanK Nov 11 '11 at 7:16
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.