在PHP中发送标头以重新验证图像的正确方法是什么?

时间:2012-06-07 14:49:18

标签: php http header http-headers firebug

我想做什么?

我有一个管理页面,我可以更改图像 - 它们都使用固定名称,并直接上传到文件系统,但有时我上传时只显示旧图像。

与此同时,我不想一遍又一遍地下载这些页面,因为它只会缓慢而难看。

所以我想要的是对我的php中的实际输出文本没有缓存,但是为了使图像重新验证创建日期,并且如果它比存储在缓存中更新以下载新的,否则为从缓存中加载它。

请建议我最适合用于此目的的标题,或者如果不可能这样做那么......

谢谢:)

1 个答案:

答案 0 :(得分:3)

一种简单的方法是将查询字符串附加到图像文件名的末尾,并在每次图像更改时更改它。图像文件会忽略查询字符串,因此它根本不会影响它,但它对浏览器来说是图像名称的一部分,因此当它更改时会强制浏览器获取新图像。

例如,您可以调用图片someimage.png?1。更新图像后,您可以将其称为someimage.png?2