2010-02-04 6 views
7

Я настроил IIS7 на gzip статический контент.В IIS7 файлы gzipped не останутся такими

http://www.coderjournal.com/2008/04/iis-7-compress-javascript-gzip/

Однако файлы не "остаться" архивированная.

Вот мой случай использования:

  1. Запрос test.css файл. Это не gzip.
  2. Повторите попытку через несколько секунд. Это is gzipped.
  3. Подождите 5 минут.
  4. Запросить файл test.css еще раз. Это не gzip.

Это не имеет смысла. Не следует ли доставлять статическую версию gzipped во все последующие запросы, если оригинал не изменился?

Примечание. Я использую Firefox и Firebug для проверки содержимого gzipped путем проверки заголовка Content-Encoding.

ответ

9

Согласно этой статье:

Changes to compression in IIS7 по Kanwaljeet Singla

В IIS7, содержание сжимается в зависимости от того, что ударил частоту, которая настраивается так:

<system.webServer> 
    <serverRuntime enabled="true" 
    frequentHitThreshold="5" 
    frequentHitTimePeriod="00:00:20" /> 
</system.webServer> 

Может быть, вы «Не ударяйте эти пороги?

+0

Это может быть связано, но почему файл gzipped исчезает через 5 минут? – frankadelic

+0

frankadelic: Я установил то же самое в своей веб-конфигурации. но gzip отключается после запроса 2 или 3. –

1

В зависимости от того, насколько сильно вам необходимо оптимизировать производительность на вашем сайте, вместо этого вы можете использовать Combres.

Большое преимущество заключается в том, что он только минимизирует и gzip ваши файлы javascript, но он также объединяет все файлы в один, так что есть только один HTTP-запрос для всех ваших файлов javascript. Кроме того, он также использует кэширование на стороне клиента, так что файл загружается только при необходимости. Кроме того, он делает все это для файлов CSS.

Это довольно просто настроить, поэтому вместо того, чтобы исправить это, ваше время может быть лучше потрачено на получение Combres.

+0

Может ли Combr использовать без использования <%= %> синтаксиса на страницах ASPX? Для моего решения у меня есть страницы с CompilationMode = "Never", поэтому эти теги не будут работать для меня. – frankadelic

+0

Нет, это не сработает. В этом случае я бы, вероятно, пошел на то, чтобы минимизировать/gzipping/упаковывать все ресурсы в один файл сам и связать его статически. –

+0

Combres выглядит круто ...возможно, будущая версия будет поддерживать синтаксис Expression Builder. – frankadelic

-1

Я предлагаю вам обратить внимание на другое программное обеспечение - Helicon Ape http://www.helicontech.com/ape Это бесплатно для 3 веб-сайтов и включает в себя решения для сжатия/кэширования, которые работают плавно. Только в одной строке конфигурации вы получите GZIP и кэш включены:

SetEnvIfNoCase mime text/.* gzip=9 cache-enable=mem 

Правила выше говорит Ape сжать текст/* MIME-типы с самым высоким уровнем, а также кэш их в памяти. Просто попробуй.

Смежные вопросы