【发布时间】:2010-11-11 18:54:34
【问题描述】:
我遇到了一个熟悉的问题。我正在使用 Django-0.97,并且无法升级 - 尽管正在使用的 Django 版本不应该在问题的原因中发挥任何作用。
我有一个向用户显示表单的搜索视图,并且在通过 POST 提交表单时,执行繁重的计算并显示作为这些计算结果生成的项目列表。用户可以单击任何这些项目的“更多信息”链接以查看项目详细信息页面。
IE上的用户,一旦他们从搜索结果页面进入任何项目的项目详细信息页面,就会得到familiar“网页已过期,点击刷新按钮,yadda yadda yadda” 当他们点击浏览器上的“返回”按钮时出错。遗憾的是,该网站的大部分用户使用 IE,不精通技术,并且抱怨这个问题。
认为设置cache backend 可以解决问题,我配置了一个简单的缓存后端。我在每个站点缓存和每个视图缓存之间进行了权衡,但无济于事。现在,我不太确定我是否正确设置了缓存。
任何可能有助于缓解问题的提示和建议将不胜感激。
谢谢。
更新(2009 年 7 月 20 日)
我使用 Fiddler 检查请求和响应的 HTTP 标头。 IE 在 POST 请求中发送 Pragma: no-cache 标头。作为请求结果生成的 HTTP 响应具有以下标头:
Cache-Control: public, max-age=3600
Date: someDateHere
Vary: Cookie
而且,是的,我没有使用 PRG 模式。
【问题讨论】:
标签: django internet-explorer caching