使用后退按钮导航会在Windows Phone 7.5中的移动IE9中返回非常旧版本的页面

rap*_*1ds 11 back browser-cache windows-phone-7 internet-explorer-9

我正在建立一个新闻网站,其中包含经常更新的动态内容(每天多次).在Windows Phone 7.5 IE 9.0 Mobile中报告此错误的用户数量:

  1. 用户导航到新闻网站首页,看到新的最新版本的页面
  2. 用户单击指向文章的链接并导航到文章页面
  3. 用户单击浏览器的后退按钮

预期结果:

单击后退按钮后,用户会在导航到文章页面之前看到首页,确切地看到她看到的内容.

实际结果:

用户看到一个非常旧的(一周左右)版本的首页.

有没有其他人在Mobile Internet Explorer 9中看到过这个bug?我怎么能防止这种情况发生?

更多细节:

  • 服务器响应包含标头Cache-Control:max-age = 60.我想保持这种方式.禁用浏览器缓存不是一种选择.
  • 响应标头或HTML元标记中没有其他与缓存相关的指令.
  • 一些用户表示此问题也发生在其他网站上
  • 根据MS的这篇博文(http://blogs.msdn.com/b/ie/archive/2010/07/14/caching-improvements-in-internet-explorer-9.aspx),按下后退按钮不应该即使缓存页面不新鲜,也要从服务器检索页面.这对我来说完全没问题,但如果缓存的页面是一周之久就不行了.
  • 当用户首次导航到我们的网站时,他们会看到该页面的最新版本.似乎有些东西会阻止IE缓存该页面,因此返回按钮会返回一些非常旧的缓存版本.

小智 0

这很可能是浏览器的缓存问题。我已经在多个网站上看到过这种情况,并且在第一次访问相同网站时在页面加载之前看到旧版本的页面弹出。