3

我正在使用 php 上传文件并在上传完成后立即显示它。有时它显示旧图像,不显示新上传的图像。但点击刷新将显示新图像。我怎样才能摆脱这个?我正在使用 apache 网络服务器。

4

3 回答 3

6

这是由于浏览器的缓存。尝试在文件名路径中添加一个随机数,例如

<img src="image.jpg?rand=<?php echo rand(); ?>" />

当然,rand每次都是由随机函数(PHP / Javascript)生成的。

于 2013-04-11T06:33:55.640 回答
4

您正在获取缓存图像,以将随机值附加到您的图像源,例如:

your_image.png?t=<?php echo time(); ?>
于 2013-04-11T06:35:24.330 回答
4

这样,只要未修改,您就可以将其保持缓存,并在修改后立即提供新图像。

<img src="image.jpg?t=<?php echo filemtime('image.jpg'); ?>" />

注意:这不会完全禁用缓存,但如果可用,则提供新图像。

于 2013-04-11T07:04:28.663 回答