Статическое сжатие gzip с IIS 7 при использовании mod_jk
У меня есть веб-приложение, работающее на JBoss, и я использую IIS 7 для балансировки нагрузки экземпляров JBoss. Статические файлы (например, CSS, JS) обслуживаются из IIS. Я использую ISAPI-фильтр mod_jk для соединения IIS и JBoss.
Я включил статическое сжатие в IIS. Однако CSS-файлы, обслуживаемые из IIS, не сжимались в gzip (я проверил это, изучив заголовок ответа, и он не имеет кодировки содержимого: заголовок gzip).
После этого я включил динамическое сжатие в IIS, а затем файлы CSS были сжаты с помощью gzip. Я проверил свой файл uriworkermap.properties, и он не перенаправляет запрос CSS-файла в JBoss. Я озадачен тем, почему IIS не сжимает файлы CSS с включенным статическим сжатием и сжимает только при включенном динамическом сжатии.
Спасибо кишор
1 ответ
Вероятно, это является результатом того, что IIS решил не сжимать контент, поскольку он не считается "часто используемым". Если вы запрашиваете файл дважды в течение 10 секунд (убедитесь, что вы не используете кеш, ctrl-F5), сжимает ли он его?
Если это так, то для атрибута Частота HitThreshold задайте значение 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
Предупреждение: понятие "частое попадание" не похоже на сжатие. Я понятия не имею, есть ли другие последствия в результате установки этого!