Почему мой файл JavaScript иногда сжимается, а иногда нет (проблема IIS Gzip) - PullRequest
1 голос
/ 06 мая 2010

я включил gzip для файла javascript в моих настройках iis, вот соответствующий раздел конфигурации.

<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
        <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" staticCompressionLevel="10" dynamicCompressionLevel="8" />
        <dynamicTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
  <add mimeType="application/soap+msbin1" 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="application/x-javascript" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </staticTypes>
    </httpCompression>

В настоящее время, когда я загружаю свой файл js, кажется, что иногда сервер возвращает gzip, а иногда нет. я не знаю почему и как это отладить.

Если файл уже распакован, его следует кэшировать на локальном диске, и в следующий раз, когда кто-нибудь снова посетит этот файл, ядро ​​iis должно вернуть кеш-файл gzip напрямую, не сжимая его снова. Это верно?

Ответы [ 3 ]

1 голос
/ 13 июля 2010

jaf, сам разбираюсь, в iis может быть какая-то ошибка.Вы можете установить опцию частотного порога, чтобы заставить файл скрипта всегда архивировать файл.я пишу пост об этой ошибке, но она на китайском, вот переведенная гугл версия Почему gzip не работает в IIS7?

1 голос
/ 02 апреля 2012

Исправление, по-видимому, действительно устанавливает для атрибутачастого порога значение 1 на узле system.webServer / serverRuntime в файле applicationHost.config. Документально подтверждено на http://www.iis.net/ConfigReference/system.webServer/serverRuntime.

Вы можете сделать это, выполнив следующую команду от имени администратора:

%windir%\system32\inetsrv\appcmd set config /section:serverRuntime /frequentHitThreshold:1 /commit:apphost

Слово предупреждения - концепция «частого попадания» не кажется специфической для сжатия. Я понятия не имею, есть ли другие последствия в результате установки этого!

0 голосов
/ 08 мая 2010

Очистите кеш браузера и повторите попытку.

...