最近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()