
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
그리고 오류없이 아파치를 다시 시작했습니다. 브라우저 캐시를 지우고 사이트를 탐색한 후 콘텐츠가 다음 위치에 나타날 것으로 예상됩니다.
/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를 꺼야 했습니다. 이유를 아는 사람이 있나요? 캐싱이 더 잘 작동하는지 모르기 때문에 계속 유지합니다.