我的朋友和我正在一个网站上工作,我们希望缓存某些图像,以便将来更快地显示它们.我有两个主要问题:
此外,有可能设置时,图像的缓存版本将到期?
如果包括进一步描述这一点的页面的示例和/或链接,将会非常感激.
我们可以使用原始Javascript或jQuery版本.
它似乎只有javascript和CSS不缓存...但图像缓存.
我正在使用Firebug,当我刷新页面时,我在Firebug中注意到js/css 有很多200个HTTP响应,但我收到的所有图像都有304个HTTP代码(内容未修改).所以看来我的JS和CSS不是缓存.
此外,当使用YSlow帮助确定我的JS/CSS内容没有缓存的问题时,它告诉我:
有4个组件配置错误的ETag
下面列出的是我的.htaccess文件
Options -Indexes
Options +FollowSymLinks
# Enable ETag
FileETag MTime Size
# Set expiration header
ExpiresActive on
ExpiresDefault "access plus 1 week"
# Compress some text file types
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml application/x-javascript text/javascript application/javascript application/json
# Deactivate compression for buggy browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Set header information for proxies
Header append Vary User-Agent
Run Code Online (Sandbox Code Playgroud)
知道我的.htaccess访问文件有什么问题阻止它缓存我的CSS或JavaScript吗?
如何使用.htaccess设置整个图像文件夹的缓存到期日期?
现在,我只希望给一个特定文件夹的内容一个长缓存到期日期.我目前正在使用以下代码(粘贴在下面),但我发现它很痛苦,因为每次我添加一件新艺术品时,我都要将它添加到此列表中.有没有办法可以指定整个文件夹?
<FilesMatch" (\.css|main_banner.jpg|cart.png|main_logo.jpg|favicon.ico|search_button.jpg|fp_banner.jpg)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)