Internet explorer IE 302重定向无缓存头问题

Internet explorer IE 302重定向无缓存头问题,internet-explorer,caching,redirect,http-status-code-302,Internet Explorer,Caching,Redirect,Http Status Code 302,发布信息后返回302重定向。此重定向旨在重新加载当前页面 这一切都很好,但IE没有向标头添加缓存: Cache-Control: no-cache 我们正在使用Squid缓存内容,将其放在标题中可以绕过Squid。 由于经常使用这种重定向(没有办法避免),这会大大增加系统的负载。 Firefox没有这个问题,它只是请求重定向页面,而不改变标题,这正是我们想要的 我们能做些什么来阻止IE不添加缓存吗?对我来说,IE中似乎有一个bug。听起来很像。您可以尝试发回301或307响应,看看它的响应是否

发布信息后返回302重定向。此重定向旨在重新加载当前页面

这一切都很好,但IE没有向标头添加缓存:

Cache-Control: no-cache
我们正在使用Squid缓存内容,将其放在标题中可以绕过Squid。
由于经常使用这种重定向(没有办法避免),这会大大增加系统的负载。

Firefox没有这个问题,它只是请求重定向页面,而不改变标题,这正是我们想要的


我们能做些什么来阻止IE不添加缓存吗?

对我来说,IE中似乎有一个bug。听起来很像。您可以尝试发回301或307响应,看看它的响应是否不同。

。这确实是一个IE问题,没有直接的解决方法。问题是IE将无条件地向HTTP POST请求添加一个Cache-Control:no-Cache-request头(如果您有代理,则添加一个Pragma:no-Cache-request头)

这无疑是十多年前在IE中引入的,目的是为了适应有缺陷的代理服务器,这些服务器不能正确处理HTTP POST请求,并且会错误地返回缓存响应

IE的一个怪癖是,当您重定向时,无缓存头被重新添加到重定向的请求中。因此,在您的情况下,重定向请求还发送POST请求中携带的“无缓存”请求头


不幸的是,没有直接的解决办法。您可以将IE用户重定向到一个中间页面,该页面使用JavaScript将他们重定向回原始页面。(但不要使用元刷新,因为它始终不发送缓存请求)。

该链接将我带到了windows体验映像。。。没有讨论。这会发生在非开发机器上吗?是的,这是在生产环境中