【问题标题】:Problem with redirecting using header location and IE9 cache使用标头位置和 IE9 缓存重定向的问题
【发布时间】:2011-06-21 18:50:37
【问题描述】:

我在 IE9 中使用 PHP 标头位置时遇到问题。

对于电子商务网站,我使用 /cart/add/id-of-product.htm (/cart/add/233.htm) 之类的链接将产品添加到购物车。它后面的页面将产品添加到购物车并将用户重定向到 /cart.htm。一切都在 FF 中完美运行。它甚至可以在 IE9 中使用,直到有人再次尝试将相同的产品添加到购物车。 IE“认为”他可以直接进入 /cart.htm 页面并跳过我尝试将产品添加到购物车的代码。不知何故,IE 缓存了有关重定向的信息,但为什么呢? “添加到购物车”按钮后面的链接清楚地显示了链接 /cart/add/233.htm,但如果你点击它,它只会跳过页面......我试着放一个 ?r=random-number (/cart /add/233.htm?263663746) 后面,但这无所谓。

有谁知道如何避免这种情况?我想在用户将产品添加到购物车后重定向用户,但是如何避免这个 IE 问题?

感谢您的宝贵时间!

【问题讨论】:

    标签: php http-headers internet-explorer-9 browser-cache


    【解决方案1】:

    Internet Explorer 缓存 RFC 允许的 HTTP/3xx 重定向。如果您不希望缓存给定的重定向,则需要使用 HTTP/302 而不使用未来的 Expires 或 max-age。您明确不想使用 HTTP/301。

    (如果您操作正确,您尝试在 URL 中放置一个随机查询字符串会起作用,但您在那里做错了。)

    【讨论】:

      猜你喜欢
      • 2010-09-28
      • 2014-01-09
      • 1970-01-01
      • 2013-02-19
      • 2012-12-21
      • 2014-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多