gpt4 book ai didi

http-headers - Internet Explorer 9 不忽略缓存 header

转载 作者:行者123 更新时间:2023-12-02 14:53:12 25 4
gpt4 key购买 nike

我对 Internet Explorer 9 的缓存感到抓狂。

我根据查询字符串值从 Perl 脚本设置了一系列 cookie。这些 cookie 保存有关页面上各种内容的信息,例如横幅和颜色。

我遇到的问题是,在 IE9 中,它总是使用缓存而不是使用新值。事件的顺序如下:

  1. 访问 www.example.com/?color=blue
  2. Perl 脚本设置 cookie,我被重定向回 www.example.com
  3. 颜色是蓝色,一切都符合预期。
  4. 访问 www.example.com/?color=red
  5. Cookie 设置、重定向、颜色设置为红色,一切正常
  6. 重新访问 www.example.com/?color=blue
  7. Perl 脚本运行,cookie 被重置(我已经确认了这一点)但是! IE9 从缓存中检索所有资源,因此重定向后我的所有颜色都保持红色。

因此,每次我访问新的 URL 时,它都会获取新鲜的资源,但每次我访问以前访问过的 URL 时,它都会从缓存中检索这些资源。

以下元标记位于 example.com 的 中,我认为这会阻止使用缓存:

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
<META HTTP-EQUIV="EXPIRES" CONTENT="0">

对于它的值(value) - 我也尝试过 <META HTTP-EQUIV="EXPIRES"
CONTENT="-1">

IE9 似乎忽略了所有这些指令。到目前为止,我在该浏览器中唯一取得成功的一次是使用开发人员工具并确保将其手动设置为“始终从服务器刷新”

为什么 IE 忽略我的 header ,如何强制它每次都检查服务器?

最佳答案

这些不是标题。他们是<meta>元素,这是 HTTP header 的极差替代品。我建议您阅读Mark Nottingham's caching tutorial ,它详细介绍了这一点以及适合使用哪些缓存指令。

此外,请忽略任何告诉您将缓存设置为 private 的人。 。这启用浏览器中的缓存 - 它表示“只要您不将其转发到另一个客户端,就可以缓存”。

关于http-headers - Internet Explorer 9 不忽略缓存 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8239599/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com