0

昨天我试图认真对待正确缓存一些 PHP 生成的页面(想想“带有评论的文章”)。极大的失败。

长话短说:我设置了 ETag 标头,设置了 Last-Modified 标头,并与他们一起检查每个文章浏览器请求的服务器端,看看我是否可以发回 304。

问题很简单:浏览器(到目前为止尝试使用 FF 3)在 1 或 2 次重新加载后,突然停止检查页面的新鲜度并使用其缓存副本。

据我了解,使用 ETag 和 Last-Modified,浏览器必须检查每个请求的服务器(否则,为什么我们应该使用 ETag?)。

我也尝试过使用 Cache-Control 或 Expires ......什么也没有。一种或另一种方式,浏览器停止检查,或者不发回 ETag ......

我真的很沮丧……有人碰巧解决了这件事吗?

4

2 回答 2

3

如果您希望浏览器重新验证,您应该始终设置“过期”。

Firefox3 做检查是基于“Expires”标头。如果它丢失,firefox3 将弥补性能的过期日期。

参考,firefox和ie缓存的区别

于 2008-11-28T18:58:35.607 回答
-2

您可以在以下位置检查当前的 FF 缓存条目

about:cache

这将向您显示 FF 与每个缓存条目一起存储的过期日期。

于 2008-12-02T15:01:43.697 回答