我正在寻找一种实现缓存控制的方法。将标题过期到我的images / css / js文件。我找了教程&只找到了使用文件扩展名添加缓存控件的方法。以下代码来自http://betterexplained.com/
<FilesMatch "\.(jpg|jpeg|png|gif)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
这会将所提及的扩展的所有图像设置为缓存一周。但是我不希望缓存所有图像,因为有些图像是由用户上传的。我只想要我的静态图像,例如:徽标,用于缓存按钮的图标。如果有人可以指出如何实现这一目标的方式或教程,那就太棒了。
答案 0 :(得分:1)
您可以更改FilesMatch过滤器以包含路径的一部分。我假设用户图像位于静态图像之外的另一个目录中。
即
<FilesMatch "^/staticdir/.+\.(jpg|jpeg|png|gif)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
答案 1 :(得分:1)
通过仅包含用于缓存的已知图像,您可以使正则表达式更具限制性:
<FilesMatch "(logo|icon|favicon|header)\.(ico|jpe?g|png|gif)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
答案 2 :(得分:1)
或者你可以再次将htaccess文件移动到将被缓存的文件夹中,并将用户图像保存在另一个文件中:D