Somehow I can't get Apache's mod-cache to work as I want. I want it to cache a proxy call to my tomcat server which is a jsp file. The jsp file displays the current time so I can notice if I get a cached response or not.. This is my config:
CacheQuickHandler off CacheLock on CacheLockPath /tmp/mod_cache-lock CacheLockMaxAge 5 CacheIgnoreHeaders Set-Cookie <Location /Kanzan/> CacheEnable disk CacheHeader on CacheDefaultExpire 800 CacheMaxExpire 64000 CacheIgnoreNoLastMod On #ExpiresActive on #ExpiresDefault A60 </Location> ProxyPreserveHost On ProxyPass /Kanzan/ http://127.0.0.1:8080/Kanzan/ ProxyPassReverse /Kanzan/ http://127.0.0.1:8080/Kanzan/
All this is inside my virtual host. I do log this in 5 different files,
cached-requests.log cache.log invalidated-requests.log revalidated-requests.log uncached-requests.log
But only cache.log and the 2 last ones ever get content. In the last file I allways get
127.0.0.1 [21/sep/2018xxxxx +0200] "GET /Kanzan/testCache.jsp HTTP/1.1" 200 472
and in cache.log I repeatedly get
cache miss: attempting entity save
I get data saved to /var/cache/apache2/mod_cache_disk, but the the cache is never used as the time keeps updating on reload..
Now I realize that the cache works... BUT ... it does not work the way I want it to. When I press refresh on my browser I want the cached value on the server to be returned if it hasn't expired.. instead, whenever I press refresh, the chache is updated! How do I make it work so that the cached value is not updating whenever a new user require this page??