.htaccess中的多个缓存指令

时间:2019-05-16 10:41:49

标签: .htaccess

我的.htaccess根文件具有防止.css和.js文件缓存的代码。我想添加第二条反指令,强制将以“ jquery”开头的文件缓存。

这是我当前的代码:

<FilesMatch "\.(css|js)$">
  <IfModule mod_expires.c>
    ExpiresActive Off
  </IfModule>
  <IfModule mod_headers.c>
    FileETag None
    Header unset ETag
    Header unset Pragma
    Header unset Cache-Control
    Header unset Last-Modified
    Header set Pragma "no-cache"
    Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
    Header set Expires "Thu, 1 Jan 1970 00:00:00 GMT"
  </IfModule>
</FilesMatch>

响应标头显示此方法有效。我尝试按照上述步骤添加一条额外的说明:

<FilesMatch "^jquery">
  ExpiresActive On
  Header set Cache-Control "max-age=31536000"
  Header set Expires "Thu, 1 Jan 2020 00:00:00 GMT"
</FilesMatch>

几次尝试对搜索字符串进行更改并尝试<Files jquery-3.3.1.min.js>都失败了。 jQuery文件保持未缓存状态。这是jquery-3.3.1.min.js的响应标头:

accept-ranges: bytes
cache-control: max-age=31536000
content-encoding: gzip
content-length: 34842
content-type: application/javascript
date: Thu, 16 May 2019 09:15:53 GMT
expires: Thu, 1 Jan 1970 00:00:00 GMT
pragma: no-cache
server: Apache
status: 200
vary: Accept-Encoding

如何删除no-cache指令并更新expires?而且,在我写作时,我还需要改进什么?

0 个答案:

没有答案