Кто-нибудь знает, как включить сжатие gzip в MVC 3? Я использую IIS7.
Результат аудита Google Chrome:
- Включить сжатие gzip (4)
- Сжатие следующих ресурсов с помощью gzip может уменьшить их размер передачи примерно на две трети (~ 92,23 КБ):
- / mydomain / может сэкономить ~ 1,53 КБ
- jquery-1.4.4.min.js может сэкономить ~ 51,35 КБ
- Cufon.js может сэкономить ~ 11,89 КБ.
- Futura.js может сэкономить ~ 27,46 КБ.
asp.net-mvc
asp.net-mvc-3
iis
compression
gzip
imarkic84
источник
источник
Ответы:
Вы можете настроить сжатие через свой
web.config
файл следующим образом:Вы можете найти документацию по этому элементу конфигурации на iis.net/ConfigReference . Это эквивалент:
Примечание: (как указано в комментариях) вам необходимо убедиться, что установлено динамическое сжатие Http, иначе настройка
doDynamicCompression="true"
не будет иметь никакого эффекта. Самый быстрый способ сделать это:optionalfeatures
(это самый быстрый способ перейти к окну «Включение или отключение компонентов Windows»)источник
optionalfeatures
у меня не работало. Вместо этого перейдите в Диспетчер серверов> Роли> Прокрутите до веб-сервера (IIS)> щелкните Добавить службы ролей. Теперь убедитесь, что установлены Веб-сервер> Производительность> Сжатие статического содержимого и Сжатие динамического содержимого.Вы можете сделать это в коде, если хотите. Я бы сделал базовый контроллер, от которого наследуется каждый элемент управления, и украсил бы его этим атрибутом ниже.
источник
filter
нулевого значения. Я использовалvar response = ...;if( response == null || response.Filter == null)return;
.gzip
first вместоdeflate
, подробнее здесь: stackoverflow.com/a/9856879/1026459Сжатие включено / отключено на уровне сервера. См. Модуль сжатия IIS в консоли управления iis.
Вот инструкции для IIS с сайта Microsoft.
источник