截至最近 safari 5 发布,结果证明我的网站出现了一些问题。我有一个运行经典 ASP 的动态网站(尽管这并不重要),并且该网站对历史堆栈进行了一些创造性的使用。例如,您可以在列出产品的页面上,然后转到有关产品的详细信息并更改产品(管理员视图)。当您单击产品上的保存时,信息将通过 AJAX 发送到服务器,并且history.back()
发出。这适用于所有浏览器(包括 safari <= 4),但是,在新发布的 safari 5 中它停止工作。似乎当您在 safari 5 中单击返回时,它实际上并没有刷新页面,它只是从缓存中加载它,这意味着在详细信息视图中所做的更改不会显示。我怎样才能在 safari 5 中也能做到这一点?这是我必须关闭缓存的当前代码(包含在每个页面的顶部):
Dim pStr
pStr = "private, no-cache, no-store, must-revalidate"
Response.AddHeader "pragma","no-cache" '?
Response.AddHeader "cache-control", pStr '? Er ikke sikker på om disse 3 siste er nødvendige.
Response.AddHeader "cache-control", "post-check=0, pre-check=0" '? Er ikke sikker på om disse 3 siste er nødvendige.
Response.AddHeader "Expires", "Mon, 26 Jul 1997 05:00:00 GMT" '?
Response.AddHeader "Last-Modified", Now()