Я использовал эту конфигурацию на своем виртуальном хосте в Apache 2.4 на Ubuntu 16:
<VirtualHost>
...
CacheQuickHandler on
CacheLock on
CacheLockPath /tmp/mod_cache-lock
CacheLockMaxAge 5
CacheIgnoreHeaders Set-Cookie
<Location />
CacheEnable disk
CacheHeader on
CacheDefaultExpire 800
CacheMaxExpire 64000
CacheIgnoreNoLastMod On
</Location>
</VirtualHost>
Я включил модули:
sudo a2enmod cache
sudo a2enmod cache_disk
sudo a2enmod expires
sudo a2enmod headers
И перезапустил apache без ошибок. После очистки кеша браузера и просмотра моего сайта я ожидаю, что контент появится в
/var/cache/apache2/mod_cache_disk/
Но вот что я все время вижу:
root@server:~# ls -la /var/cache/apache2/mod_cache_disk/
total 8
drwxr-xr-x 2 www-data www-data 4096 Apr 18 11:29 .
drwxr-xr-x 3 root root 4096 Jun 29 08:07 ..
Я вроде ничего не кеширую ?!
Когда я добавляю ведение журнала, я получаю кучу минусовых знаков "-" с использованием LogFormat "% {cache-status} e". Число минус увеличивается, но что это значит?
Лог-файлы:
root@server:~# ls -l /etc/apache2/logs/
total 4
-rw-r--r-- 1 root root 1059 Aug 26 04:47 cache.log
-rw-r--r-- 1 root root 0 Aug 26 03:53 cached-requests.log
-rw-r--r-- 1 root root 0 Aug 26 03:53 invalidated-requests.log
-rw-r--r-- 1 root root 0 Aug 26 03:53 revalidated-requests.log
-rw-r--r-- 1 root root 0 Aug 26 03:53 uncached-requests.log
Хорошо, мне удалось заставить все это работать, но мне пришлось отключить CacheQuickHandler, чтобы увидеть кешированный контент ... Кто-нибудь знает почему? Я отключаю его, так как не знаю, работает ли кеширование иначе.