Если вы можете легко отключить код сжатия, то использовать функции сжатия IIS7 довольно просто.
Вы можете включать и отключать сжатие на уровне папок с помощью файла web.config в IIS7.
Тем не менее, конфигурация, которая контролирует, какие типы MIME сжаты, а какие нет, сохраняется на уровне веб-сервера.
Чтобы включить динамическое сжатие для данного сайта / папки vdir /, предполагая, что на сервере установлена функция динамического сжатия, просто откройте свой сайт / папку в диспетчере IIS и нажмите значок «Сжатие». Здесь вы можете включить как статическое, так и динамическое сжатие.
На этом этапе проверьте, сработало ли это (т. Е. Что трафик сжимается). Если это так, то конфигурация динамического сжатия по умолчанию работает, и вы можете пойти и забрать ранний обед:)
Если нет, то вам нужно:
- Нажмите на узел сервера (в корне) в диспетчере IIS. Затем откройте «Редактор конфигурации» (в нижнем ряду, обычно слева).
- В раскрывающемся списке формы откройте узел system.webserver и нажмите на конечный узел httpCompression.
- Теперь вы увидите все параметры конфигурации для сжатия для всего сервера - вам нужно открыть параметр «dynamicTypes».
- Здесь вы можете добавить дополнительные правила для миметипов, которые нужно сжимать.
Одна вещь, которая немного раздражает, это то, что mimetypes совпадают точно, и иногда правила по умолчанию не будут соответствовать всем, что вы хотите.
Я, например, добавил 4 дополнительных правила для наших серверов:
- применение / JSON
- Приложение / XML
А потом:
- применение / JSON; кодировка = utf8
- Приложение / XML; кодировка = utf8
Потому что, по какой-то причине, я обнаружил, что у mimetype моих ответов json / xml из .Net в конце был этот дополнительный бит 'charset ='. Если это произойдет, и его нет в списке правил, то сжатие IIS7 не сработает. Мне понадобилось много времени (и много пользы от Fiddler!), Чтобы понять это!