Настройка сжатия gzip в asp.net

Есть ли способ установить сжатие gzip на уровне web.config или я могу сделать это только в консоли управления IIS?


person Micah    schedule 24.08.2009    source источник
comment
возможный дубликат Как реализовать сжатие GZip в ASP.NET?   -  person Chris Moschini    schedule 19.04.2014


Ответы (2)


Вот попробуйте следующее: мой сайт ускорился примерно на 400%. Сработало с первого раза.

Активируйте GZip с помощью web.config

<system.webServer>
  <httpCompression directory="%SystemDrive%\inetpub\
temp\IIS Temporary Compressed Files">
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/>
    <dynamicTypes>
      <add mimeType="text/*" enabled="true"/>
      <add mimeType="message/*" enabled="true"/>
      <add mimeType="application/javascript" enabled="true"/>
      <add mimeType="*/*" enabled="false"/>
    </dynamicTypes>
    <staticTypes>
      <add mimeType="text/*" enabled="true"/>
      <add mimeType="message/*" enabled="true"/>
      <add mimeType="application/javascript" enabled="true"/>
      <add mimeType="*/*" enabled="false"/>
    </staticTypes>
  </httpCompression>
  <urlCompression doStaticCompression="true" doDynamicCompression="true"/>
</system.webServer>
person brenjt    schedule 01.09.2011
comment
Пытался несколько раз, но если эти настройки заданы в web.config, сжатие не работает. Если настройки выставлены в applicationhost.config, все работает. Я не люблю устанавливать настройки в applicationhost.config, но, по крайней мере, он работает. - person Karel Kral; 19.11.2012
comment
Мой провайдер общего хостинга управляет моими разрешениями с помощью Plesk, и это решение тоже не помогло мне. Я вкратце объяснил более подробное решение, которое я собрал на stackoverflow.com/a/14509007/1624169 - person Chawathe Vipul S; 24.01.2013
comment
Microsoft соглашается. http://www.iis.net/configreference/system.webserver/httpcompression Но это, похоже, уже быть настроенным по умолчанию при установке сжатия gzip, поэтому в этом шаге нет необходимости, и он минимизирует только содержимое, такое как js, а не HTML страниц ASP.Net. - person Chris Moschini; 27.06.2014
comment
HTML не сжимается даже после того, как вышеуказанное оказывается ошибкой этой неясной настройки: stackoverflow.com/a/15626981/176877 - person Chris Moschini; 27.06.2014
comment
Если Javascript не сжат, попробуйте вместо этого использовать тип MIME application / x-javascript. - person Christian Davén; 28.08.2014
comment
Не могли бы вы сказать мне, где находится web.config, я нашел несколько на своем сервере. - person Tassisto; 30.01.2017
comment
@ ChristianDavén, могу я поставить ‹добавить mimeType = application / x-javascript enabled = true /› между тегами staticTypes и / или dynamicTypes? - person Tassisto; 30.01.2017

Да, вы можете включить сжатие с помощью web.config, как показано в статье ниже, но это может зависеть от разрешений на сервере, разрешенных сайтами.

Следует отметить, что динамическое сжатие (все, что необходимо обработать перед отправкой ti клиенту) может увеличить нагрузку на сервер, поскольку ему приходится выполнять сжатие при каждом отдельном запросе.

Сжатие IIS7


Изменить: обратите внимание, что это для IIS7 (как вы отметили)

person meandmycode    schedule 24.08.2009
comment
Это изменение по какой-то причине приведет к сжатию js и css, но не к фактическому выводу HTML из ASP.Net. Вы бы хотели включить динамическое сжатие контента, это поможет, но в моем тестировании это не так. - person Chris Moschini; 27.06.2014