我正在开发的一个Web应用程序使用大量异步加载的图像,这些图像随着时间的推移而经常修改,同时保留其URL。有几个问题是:操作浏览器缓存
如果我不提供在HTTP头明确禁用缓存的图像,用户经常会收到一个过时的镜像版本,但这样做大大增加了服务器的负载。
如何从浏览器中取出缓存控件并手动评估是否应使用缓存的图像或从服务器重新加载它?由于有许多独立的图像需要加载,我还通过不同的主机名(即image01.example.com
,image02.example.com
,但所有这些主机名解析为相同的物理服务器)并行化图像下载。由于主机名的NN
是随机生成的,因此我也可以从缓存未命中获取浏览器缓存中最新的图像。我是否应该放弃这种做法,并用其他方法取而代之?,你会推荐什么缓存控制技术和进一步的阅读材料使用?
(1),但不会有效地禁用缓存为这个形象?即如果我添加一个随机无意义参数并刷新页面,图像将不会从缓存中加载,因为显然这个参数会改变。此外,我还不清楚如何检查服务器上的图像是否已被修改,我们需要强制重新加载。 – dpq 2010-07-28 13:40:04
这就是你问的,我想。我会添加到我的答案。 – Pointy 2010-07-28 13:53:30
(1)只有在图像变化时才改变_random_无意义参数? – MrWhite 2010-07-28 14:12:33