0

有一个博客,我可以在其中发布图片和链接,无需脚本。我仍然想要动态内容。

我的想法:没有缓存等标头的图像由我自己的服务器端 php 脚本动态生成。此图像链接到我服务器上的一个页面,该页面设置 cookie 并执行 javascript history.back()。然后下次下载图像时,它是一个不同的图像。

问题是,按下后退按钮后,我无法让浏览器再次下载图像...

我设置了以下标题:

header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
header('Pragma: no-cache'); // HTTP 1.0.
header('Expires: 0'); // Proxies.

仍然由于某种原因,如果图像位于标签内,则返回时会从缓存中加载旧版本。

另外我在第二页包含了图像,所以浏览器甚至下载了新版本的图像,但是当我按下后退按钮时,我仍然看到旧版本......

如何强制浏览器重新下载图像?

4

1 回答 1

0

一种方法是在图像源的末尾附加一个数字:

<img src="image.jpg?1" />

如果您的最后一张同名图片是image.jpg您的号码后?将强制浏览器下载图像

因此,如果您的最后一张同名图片是:

<img src="image.jpg?1" />

您必须将其更改为

<img src="image.jpg?2" />

您可以有一个随机生成器编号并将其放在 src 的末尾,这样每次您的浏览器开始下载您的图像时

于 2014-08-19T09:54:11.143 回答