Can a page opt out of IIS 7 compression?

Posted by Glen Little on Stack Overflow See other posts from Stack Overflow or by Glen Little
Published on 2010-04-20T19:33:04Z Indexed on 2010/04/23 4:33 UTC
Read the original article Hit count: 275

Filed under:
|
|

My pages are automatically being compressed by IIS7 with GZIP.

That is great... but, for one particular page, I need to stream it to the user, using Response.Flush() when needed. But when the output is being compressed, the IIS server seems to collect all my output until the page is done before compressing and sending it to the client. That nullifies my attempt to Flush the content out to the user.

Is there a way that I can have this one page opt out of the compression?

One possible option

I've determined that if I manually set the content type to one that does not match the IIS configuration at c:\windows\system32\inetsrv\config\applicationhost.config, then IIS will not compress it. Eg. Response.ContentType = "x-text/html". This works okay with IE8, as it falls back to display the HTML. But Firefox will ask the user what to do with the unknown file type.

This could work, if there was another Mime Type I could use that browsers would accept as HTML, that is not matched in the applicationhost.config. For reference, these are the mime types that will be compressed:

   <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" />

Others options?

Are there other options to opt out of compression?

© Stack Overflow or respective owner

Related posts about ASP.NET

Related posts about iis-7.5