IIS 重命名图像仍然显示以前的内容 - 缓存问题?

IIS Renamed Images still show previous contents - Caching issue?

在我们使用 IIS 8 的网站上,我们在图像管理上提供完成的 jpgs screen.The图像位于通过虚拟文件夹连接到 IIS 中的单独硬盘上。所有照片都以实体 ID 后跟照片编号命名。所以:

Photo 1: 58935928.1.jpg
Photo 2: 58935928.2.jpg
Photo 3: 58935928.3.jpg

如果我想将照片 3 重新排序到照片插槽 1,我必须将照片 3 重命名为 58935928。3.jpg.TEMP 然后将照片 1 重命名为 58935928。3.jpg 然后是 58935928。3.jpg.TEMP 到 58935928.1.jpg。这很好用。但是当查看页面并刷新时,58935928.1.jpg返回的图像仍然是重命名之前的旧图像。大约 5-10 分钟后,刷新现在将显示正确的图像。

我们认为这是一个浏览缓存问题。 Ctrl-F5 强制刷新并没有修复它,在页面上设置无缓存元数据也没有。我们注意到,当发生这种情况时,我们转到不同的浏览器,图像仍然显示不正确。这让我们想到了服务器端缓存,因为新的浏览器实例也得到了错误的图像。

我们进入 iis 并将输出缓存配置为在内核和用户上不缓存,只是为了看看它是否会修复它。没有不同。我们不想在所有内容上都禁用缓存,只是 jpgs 就可以了。

为什么会这样?这给我们的用户造成了混淆,因为他们重新排序图像并且实际上是在文件系统上重新排序,但 IIS 似乎提供旧图像而不是新图像。

我说的文件夹挂载为虚拟文件夹我错了。它实际上是一个已安装的卷。我看不出这有什么不同,但是一旦我将它作为已安装的卷删除并使其成为一个虚拟文件夹,一切正常。

所以在我的情况下,是因为所有照片都在导致问题的已安装卷上。