2009-05-29 3 views
1

Я включил mod_deflate на Apache 2 на машине Ubuntu и заметил, что мой браузер не кэширует сжатые типы файлов при обновлении страницы. Я использовал сетевые настройки firebug, чтобы проверить это и проверить на другом компьютере.mod_deflate на apache заставляет браузер делать 200 вместо 304?

В mod_deflate, если я сжимаю файлы css и js, браузер делает запрос каждый раз.

Если отключить mod_deflate, браузер получит 304 для файлов css и js. Чистый эффект заключается в том, что страницы загружаются быстрее при обновлении, если у меня нет mod_deflate.

Возможно, это вызвало включение одного из других модулей, которые я включил? Есть ли какая-то настройка кеша в Apache, которую я неправильно настраиваю?

Мой модов с поддержкой каталога: alias.conf
authz_default.load
autoindex.conf
deflate.load
mime.conf
php5.conf
setenvif.load
alias.load
authz_groupfile.load
autoindex.load
dir.conf
mime.load
php5.load
ssl.conf
auth_digest.load
authz_host.load
cgi.load
dir.load
negotiation.conf
rewrite.load
ssl.load
authn_file.load
authz_user.load
deflate.conf
env.load
negotiation.load
setenvif.conf

+0

Вы можете разместить свои заголовки, когда mod_deflate включен? Вероятно, это проблема конфигурации, и заголовки могут сделать это очевидным. – brianegge

+0

См. Лучшее исправление, а затем выше: http://stackoverflow.com/a/38617597/960020 – Stalingrad

ответ

0

Я думал, что ответил на это раньше ... не был опубликован. Извините, если он заканчивается двойным сообщением.

Оказывается, это было проблемой, которая вызывала проблему. Я не уверен, почему, но когда мы выключили etags, браузер начал правильно кэшировать вещи. Поиск файлов в Google.

Теперь, я не уверен, почему превращение etags off сделает это ... если кто-нибудь знает, пожалуйста, сделайте сообщение в этой теме. Благодаря!

0

Это на самом деле ошибка в Apache относительно ETags с Gzip:

https://issues.apache.org/bugzilla/show_bug.cgi?id=45023

Turning ETags работает работает, но есть лучше обходной путь:

<IfModule mod_headers.c> 
    RequestHeader edit "If-None-Match" "^(.*)-gzip$" "$1" 
    Header edit "ETag" "^(.*[^g][^z][^i][^p])$" "$1-gzip" 
</IfModule>