Мои страницы автоматически сжимаются IIS7 с помощью GZIP.
Это здорово... но для одной конкретной страницы мне нужно передать ее пользователю, используя Response.Flush()
при необходимости. Но когда сжимается вывод, сервер IIS, кажется, собирает весь мой вывод до тех пор, пока страница не будет выполнена до сжатия и отправки ее клиенту. Это аннулирует мою попытку сбросить содержимое пользователя.
Есть ли способ, чтобы у меня была одна страница отказаться от сжатия?
Один из возможных вариантов
Я решил, что если я вручную настрою тип содержимого на тот, который не соответствует конфигурации IIS в c:\windows\system32\inetsrv\config\applicationhost.config
, IIS не будет сжимать его. Например. Response.ContentType = "x-text/html"
. Это хорошо работает с IE8, поскольку он возвращается для отображения HTML. Но Firefox спросит пользователя, что делать с неизвестным типом файла.
Это может сработать, если бы существовал другой тип Mime, который я мог бы использовать, чтобы браузеры принимали как HTML, что не соответствует в applicationhost.config
. Для справки, это типы mime, которые будут сжаты:
<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" />
Другие варианты?
Существуют ли другие опции для отказа от сжатия?