我在 Ubuntu 16 上的 Apache 2.4 中的虚拟主机中使用了此配置:
<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
答案1
好吧,我设法让所有功能都正常工作,但我必须将 CacheQuickHandler 设置为关闭才能查看缓存内容。有人知道为什么吗?我将其关闭,因为我不知道缓存是否能正常工作。