3

我想在 10 天后为我的 html 页面设置缓存过期

<META HTTP-EQUIV="expires" CONTENT="Thu, 12 Apr 2012 08:21:57 GMT">

所以我的问题是

  1. 10天后会发生什么?是的,缓存会过期,但我必须再次设置过期日期吗?
  2. 我有一种方法可以设置白天的长度,例如:10
  3. 我在这里感到困惑,请给我一些参考。

请帮忙...

4

3 回答 3

3

标签的作用有限。特别是,它不会影响代理,因为它们适用于 HTTP 标头并且不解析 HTML 文档。

在到期时间之后,浏览器应该将其缓存中的页面副本视为陈旧的,而不是使用它,而是从服务器请求页面(如果在线),至少有条件地(如果自某某修改后发送)。这意味着在对页面的任何新请求之后,接收到的副本根本不应该被缓存。所以是的,你应该设置一个新的到期日期,除非你真的想阻止缓存。

Expires头或其meta模拟需要提及特定时间。还有其他影响缓存的方法,请参阅http://www.mnot.net/cache_docs/

于 2012-04-12T21:49:59.533 回答
2

您需要使用某种服务器端脚本语言(如 PHP 或 ASP 或 JSP)来动态设置该日期。这只是一个“提示”,浏览器可能会也可能不会听。

于 2012-04-12T21:44:17.897 回答
1

这是一个提示,告诉浏览器他们应该将 HTML 保存在缓存中直到指定的日期。这意味着,如果浏览器符合要求,那么每当它看到相同的 URL 时,它就不会请求检索它,而是会从缓存中获取 HTML 并显示它。

因此,您可以安全地为每个请求生成一个新时间,因为缓存页面的浏览器无论如何都不会发出请求,并且发出新请求的浏览器将获得更新的提示。

请注意,尽管没有人强迫浏览器遵守,但他们可能会简单地忽略提示并提出请求。

于 2012-04-12T21:43:17.053 回答