0

我在这里做了很多搜索,并应用了一些提到的方法,但没有任何运气。

我的问题是我管理的一个网站,客户每周都会以相同的文件名上传一个新的 PDF。问题是人们试图下载这个,很多人抱怨它加载了过去几周的 PDF。这是由于浏览器缓存,因为当我告诉他们清除缓存时,一切正常。

我有两种可能的解决方案:

1)强制下载PDF文件,而不是在新窗口中打开。现在我已经尝试了各种这些 htaccess 调整,但似乎都无法在 IE9 或 Safari 上运行。

2)以某种方式更改缓存率,以便PDF文件的缓存率仅持续一分钟,我不知道如何做到这一点,甚至可能吗?

有没有人有任何解决方案,而不是每次都链接文件名?我们不这样做的原因是她想自己上传 PDF,而不必担心编辑 HTML 文件链接。

在此先感谢,马特

4

1 回答 1

1

您可以使用FilesMatch容器并mod_headers在所有浏览器、客户端和代理中完成缓存预防:

<FilesMatch ".pdf$">
    FileETag None
    <IfModule mod_headers.c>
        Header unset ETag
        Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
        Header set Pragma "no-cache"
        Header set Expires "Thu, 1 Jan 1970 05:00:00 GMT"
    </IfModule>
</FilesMatch>
于 2013-04-03T05:54:57.817 回答