我正在为文件设置缓存控制标头。我想max-age=86400
为所有.css
和.js
以及max-age=3600
所有其他人设置。
<FilesMatch "\.(css|js)$">
Header append Cache-Control max-age=86400
</FilesMatch>
<FilesMatch "???">
Header append Cache-Control max-age=3600
</FilesMatch>
我不知道我应该写什么正则表达式来反转\.(css|js)$
匹配。或者也许还有其他方法可以做到这一点?
更新。基于这个问题的答案,我找到了可行的解决方案:
<FilesMatch "(?<!\.css|\.js)$">
Header append Cache-Control max-age=3600
</FilesMatch>
不幸的是,找不到将点留\.
在括号外的方法。但这个解决方案对我来说仍然很好。
附带说明一下,所有其他文件都包括根本没有文件名的文件,例如http://example.com/
.