我正在尝试设置 apache2 反向代理来缓存图像。(需要 Apache,不需要 nginx)
似乎有标题被缓存,但没有图像、css 等。
我的配置:
CacheEnable disk /
CacheDirLevels 5
CacheDirLength 3
Header unset Cache-Control
CacheIgnoreNoLastMod On
CacheIgnoreCacheControl On
CacheMaxFileSize 100000000
CacheIgnoreNoLastMod On
CacheMaxExpire 1209600
CacheIgnoreQueryString On
ExpiresActive On
ExpiresByType image/gif A600
ExpiresByType image/png A600
ExpiresByType image/jpeg A600
ExpiresByType text/css A600
ExpiresByType text/javascript A600
ExpiresByType application/x-javascript A600
ExpiresByType image/x-icon A600
... 查找/var/cache/apache2/mod_disk_cache /var/cache/apache2/mod_disk_cache/yLp /var/cache/apache2/mod_disk_cache/yLp/RoH /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary /var/缓存/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary/E8t /var/缓存/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary/E8t/g9u /var/缓存/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary/E8t/g9u/8de /var/缓存/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary/E8t/g9u/8de/VLu /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary/E8t/g9u/8de/VLu/3Io /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary/E8t/g9u/8de/VLu/3Io/qHld08w.data /var/cache/apache2/mod_disk_cache/yLp/RoH/iGt/8Dm/4KZ/uhEhPIw.header.vary/E8t/g9u/8de/VLu/3Io/qHld08w.header
查找 /var/cache/apache2/mod_disk_cache|grep jpeg 和 查找 /var/cache/apache2/mod_disk_cache|grep css 结果为零。
来自错误日志(调试)[2013 年 4 月 28 日星期日 14:22:36] [调试] mod_cache.c(751): cache: 缓存 url:/~/media/Images/2011_01_LR_jpg.jpg [2013 年 4 月 28 日星期日 14:22:36] [调试] mod_cache.c(757): cache: 删除 CACHE_REMOVE_URL 过滤器。
答案1
我认为 mod_cache 不能开箱即用,因此您应该调整 apache httpd 配置或
vhost 配置:首先,在静态文件所在的目录上您需要设置:
<FilesMatch "\\.(|pdf|jpg|jpeg|png|gif|)$">
Header unset Last-Modified
</FilesMatch>
另外,据我记得,在您的 cache_mod 配置中,您需要指定 CacheRoot 路径:
CacheRoot /path/to/your/cache_folder
希望这可以帮助。