apache mod_deflate не работает с IE 7
Я настроил apache2 для обслуживания gziped файлов
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript application/json
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
DeflateCompressionLevel 9
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
Он отлично работает, когда я тестирую файл в Safari или Chrome, или событие с curl (curl --header 'accept-encoding: gzip' url), но, похоже, не работает в IE7.
Я тестировал с http://www.webpagetest.org/.
Я делаю что-то неправильно?
Спасибо
2 ответа
Это было бы проблемой. Вы явно запрещаете gzip для браузеров MSIE (Microsoft Internet Explorer).
"BrowserMatch bMSIE! No-gzip! Gzip-only-text/html"
Похоже, вы используете правила по умолчанию. MSIE 5.5 и 6 имели проблемы с gzip, для которых было исправлено не архивировать содержимое при обслуживании в этих браузерах.
Ссылка ниже должна помочь вам лучше понять это.
http://sebduggan.com/posts/ie6-gzip-bug-solved-using-isapi-rewrite
Вы можете исправить это очень легко, если он будет соответствовать всем до 7; замените ваш матч на:
BrowserMatch \bMSIE\s7 !no-gzip !gzip-only-text/html
Это будет держать его включенным для IE7 и далее.