使用.htaccess 为相同扩展名的文件设置不同的缓存控制
Set different cache controls for files of the same extension using .htaccess
我不熟悉使用 .htaccess 文件。我有图像文件; a.jpeg & 同一文件夹中的其他几个 .jpeg 文件。我希望客户端做的是缓存 a.jpeg 但不是其余的 .jpeg 文件。
这是我的 .htaccess 文件的样子:
#exception
<Files a.jpeg>
Header set Cache-Control "max-age=604800, public"
</Files>
# NEVER CACHE - rest of .jpegs
<FilesMatch "\.(jpg|jpeg)$">
Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate"
</FilesMatch>
问题是 a.jpeg 没有像所有其他 .jpeg 一样被缓存。请帮忙。
我用来测试缓存和非缓存文件的网站是这样的:https://www.giftofspeed.com/cache-checker/
我才知道 <FilesMatch "">
需要正则表达式来搜索文件,因此正则表达式:FilesMatch 标签内的 "\b^(?!a)\w*\.jpg\b"
有效。
这是完整的 .htaccess 文件:
# NEVER CACHE - rest of .jpegs
<FilesMatch "\b^(?!a.jpg)\w*\.jpg\b">
Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate"
</FilesMatch>
我不熟悉使用 .htaccess 文件。我有图像文件; a.jpeg & 同一文件夹中的其他几个 .jpeg 文件。我希望客户端做的是缓存 a.jpeg 但不是其余的 .jpeg 文件。
这是我的 .htaccess 文件的样子:
#exception
<Files a.jpeg>
Header set Cache-Control "max-age=604800, public"
</Files>
# NEVER CACHE - rest of .jpegs
<FilesMatch "\.(jpg|jpeg)$">
Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate"
</FilesMatch>
问题是 a.jpeg 没有像所有其他 .jpeg 一样被缓存。请帮忙。
我用来测试缓存和非缓存文件的网站是这样的:https://www.giftofspeed.com/cache-checker/
我才知道 <FilesMatch "">
需要正则表达式来搜索文件,因此正则表达式:FilesMatch 标签内的 "\b^(?!a)\w*\.jpg\b"
有效。
这是完整的 .htaccess 文件:
# NEVER CACHE - rest of .jpegs
<FilesMatch "\b^(?!a.jpg)\w*\.jpg\b">
Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate"
</FilesMatch>