使用标头位置和IE9缓存重定向的问题

时间:2011-06-21 18:50:37

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

我在使用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 =随机数(/ cart) /add/233.htm?263663746)背后,但这没关系。

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

谢谢你的时间!

1 个答案:

答案 0 :(得分:0)

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

(如果你已经正确地做了,你试图在URL中放置一个随机查询字符串会有效,但你在那里做错了。)