为什么Safari不尊重我的缓存控制指令?

Gre*_*reg 9 safari cache-control

有一个特定的页面,我希望浏览器始终加载,特别是当用户按下浏览器后退按钮才能访问它.

所以我在这个页面的标题中使用了以下'Cache-Control'指令(直接从我的代码中获取PHP).

$headers['Cache-Control'] = 'no-store, no-cache, must-revalidate, max-age=0';
Run Code Online (Sandbox Code Playgroud)

这适用于FF,IE和Chrome,但Safari(5.0.1)似乎忽略该指令并且无法重新加载页面(跨多个用户,因此它似乎不是特定于设置的问题).搜索没有发现任何已知的错误,所以我假设我的结果有些不对劲.

任何指针都将非常感激.

更新:刚刚在SO上找到了这个答案.

Safari浏览器忽略了我的无缓存

尚未尝试过,但看起来很有希望.很奇怪它是身体标签的补充,所以我持怀疑态度.

Gre*_*reg 5

答案是在body标签中包含以下属性以强制Safari重新加载页面:

onunload=""
Run Code Online (Sandbox Code Playgroud)

如:

<body onunload="">
Run Code Online (Sandbox Code Playgroud)

我在这里找到了这个:Safari浏览器忽略了我的无缓存

反过来从这个线程得到它:单击后退按钮时是否存在跨浏览器onload事件?