禁用图像缓存


disable caching of images

我正在为一个问题构建一个后端。后端所做的更改通过ajax提交。每个问题可以有一个或没有图像。因此,我创建了一个文件夹,其中包含以数据库中的问题id命名的所有问题图像。上传、更改和删除图像在我的解决方案中工作得很好,但我在浏览器完成的缓存方面遇到了一点问题。如果我删除了一个图像,它就不再存在于服务器上。然而,谷歌浏览器仍然显示它。即使在重新加载页面后,它显示的旧图片已经不存在了。在Firefox中,也有同样的问题,但在重新加载后就修复了。Opera工作得很好,我没有尝试IE。当然,Chrome在清除浏览器缓存后可以正常工作。编辑其他任何东西,例如问题文本,在所有浏览器中都可以正常工作。只是缓存图像会产生问题。

有没有可能阻止浏览器缓存我的图像?

你可以把它放在你的。htaccess文件

<FilesMatch "'.(jpg|jpeg|png|gif)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</FilesMatch>

这将禁用缓存您指定的格式(如果您使用其他图像类型,您可以添加更多)

来源:http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html