Internet Explorer:“Cache-Control:no-store,max-age = ...”的奇怪行为

时间:2014-02-28 22:17:13

标签: internet-explorer caching cache-control

当发送Cache-Control标题时,我目前正面临一些使用Internet Explorer(IE11和所有其他“模拟版本” - IE8,IE9和IE10 - 在IE11中)的奇怪行为。

我们的网络应用程序是某种Web-Cam应用程序,使用旧学校HTML4(要求)显示实时图像。 这些实时图像使用Cache-Control: no-store, max-age=10发送。 因此,该图像应该缓存大约10秒但不存储在磁盘上。这很重要,因为它填满了硬盘驱动器!我们的客户使用非常旧的硬件(我的意思是非常有限的资源)!

然后还有其他类型的图像应该缓存一段时间,让我们说一个小时。因此,我使用Cache-Control: no-store, max-age=3600发送相同的标头。

问题

现在的问题是:第一种类型的图像(10秒max-age)被正确缓存。但是,其他图像根本没有缓存。浏览器应该第二次请求使用缓存的图像。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

经过进一步测试后,我得出结论,这是IE的一些缓存限制(使用REAL 9,10和11进行测试)。

从上面提到的实时图像中,一次只显示一个。所以IE只需要缓存该图像的一个 实例(具有该特定名称,假设为live_image.bmp)。

从其他图像(需要缓存一小时)中,一次显示多个(最多32个)相同的图像名称但不同的URL(它们由<< em>时间戳和其他一些参数)。

显然,IE只会缓存其中五个图像并拒绝缓存任何其他图像。