2014-03-19 64 views
0

我有一个asp.net网页生成的服务器(IIS 8.5),它显示一些基于存储在后端数据图。我手动更新数据库(批量插入一些数据),并刷新浏览器,但页面不显示新数据。如何自动刷新HTTP缓存?

我认为这是一个缓存问题,因为当我按ctrl + F5时,出现新数据。那么我应该如何解决这个问题呢?在网络服务器上做些什么?

回答

0

您可以通过ExpiresCache-Control,Last-ModifiedETag标题控制浏览器缓存。

看看这些two Google Developers pages

如果你想不惜任何代价禁用缓存,包括一个独特的标签在每一次变化的图像内容的变化,例如您的图片网址:

http://example.test/path/to/image/graph1.png?version=2014-3-19 

随着version改变你每次更新图像。由于它是一个新的URL,它保证不被缓存。尽管如此,使用这种技术时要小心,因为如果不是真的需要使用这种技术,会导致加载时间过长(因为您禁用了图像缓存)。

+0

你认为我可以更改IIS服务器上的ETag(不知道Web服务器是否允许这样做)?因此,当浏览器将缓存的ETage与服务器比较时,它将触发GET。 – Bargitta

+0

我不是一个国际空间站的家伙,但是,这些标题通常是通过Web服务器配置设置的。 –