我正在使用一个简单的servlet过滤器,强制浏览器跳过某些服务器资源的缓存:
Cache-Control: private Pragma:
这在Internet Explorer中运行良好,但它不适用于Firefox 3.0.10。我结束了写这段代码:
Cache-Control: no-cache, no-store, must-revalidate, max-age=-1 Pragma: no-cache, no-store Expires: -1 // -1 is the unix time, the client receives a date in 1969 :) Last-Modified: -1 // ditto
这迫使firefox不进行任何缓存。其他浏览器怎么样?没有适用于主流浏览器的缓存标头的最佳实践怎么样?
答案 0 :(得分:7)
Drupal 6这样做(适用于我所知道的每个浏览器):
此实例中没有pragma标头。我不确定为什么你的例子不起作用,它可能是负时间戳,这适用于~250.000 Drupal站点:)
答案 1 :(得分:1)
您的初始解决方案无法可靠地运行,因为:
Pragma:
标头不包含值。就HTTP协议而言,我不确定它是否合法。