2009-02-04 84 views
3

我有一个Internet Explorer 6.0的缓存问题,我想指示浏览器而不是来缓存他请求的页面。如何指示网页浏览器不要缓存页面?

更多信息:在我的页面中,有一个随机标记可防止重新加载站点并发布两次或更多次相同的信息。

如果您现在为此页添加书签,则必须指示浏览器每次请求时刷新该站点。

Firefox 3.0.5正确地做到了这一点,但IE 6.0将随机令牌保存在缓存中。

我包括以下受影响的网页的meta标签:

<meta http-equiv="cache-control" content="no-cache, must-revalidate"> 
<meta http-equiv="expires" content="0"> 
<meta http-equiv="pragma" content="no-cache"> 

任何想法? 在此先感谢!

回答

4

这是一个相当有据可查googleable问题,而且很可能在这里被骗了好几次,但FWIW这是我的标准块(C#):

Response.AppendHeader("Cache-Control", "no-cache"); //HTTP 1.1 
Response.AppendHeader("Cache-Control", "private"); // HTTP 1.1 
Response.AppendHeader("Cache-Control", "no-store"); // HTTP 1.1 
Response.AppendHeader("Cache-Control", "must-revalidate"); // HTTP 1.1 
Response.AppendHeader("Cache-Control", "max-stale=0"); // HTTP 1.1 
Response.AppendHeader("Cache-Control", "post-check=0"); // HTTP 1.1 
Response.AppendHeader("Cache-Control", "pre-check=0"); // HTTP 1.1 
Response.AppendHeader("Pragma", "no-cache"); // HTTP 1.0 
Response.AppendHeader("Expires", "Wed, 09 Jun 1993 00:00:00 GMT"); // HTTP 1.0 
+0

这是一个不错的简编 – StingyJack 2009-02-04 13:10:09

0

检查您的服务器正在发送的HTTP标头,这些可以超过HTML中的元部分。

+0

在HTML元部分是不值得的字节,需要下载 - 这是一个纯粹可选的标签集,不需要浏览器处理。然而,响应中的缓存标头不是可选的,并且可以正常工作。 – 2009-02-04 12:59:48

相关问题