php - 允许在页面上缓存,但确保图像不是

时间:2012-01-31 05:41:21

标签: php javascript image caching dynamic

我正在建立一个网站,允许用户上传图片。

当一个用户(user1)查看另一个用户(user2)个人资料页面时,通常会显示缓存的图片,而不是user2最近上传的新图片。

我无法设置标头以防止缓存,因为网站的设计对网站上的所有网页都有一个公共标题/菜单/导航,这会对带宽/网站性能产生非常大的影响。< / p>

我的问题是:

使用PHP,JavaScript,HTML或内联CSS标签,有没有办法阻止个别图像被缓存?或者确保在每个页面视图中新加载它们?

2 个答案:

答案 0 :(得分:3)

理想情况下,您可以相应地设置服务器以发送正确的标头。

快捷方法是让您的PHP页面在图片网址的末尾输出一个随机数或时间戳:

<img src="yourimage.jpg?<?php echo time(); ?>" />

使用模板引擎或其他任何东西将PHP与图像分开。

第三种选择是使用PHP脚本返回图像,并在那里设置标题。

答案 1 :(得分:0)

试试这个:

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