缓存中的图像未被使用

时间:2015-01-18 16:07:39

标签: php ajax image caching manifest

我正在开发这个网络应用程序,我想缓存一些静态内容,以减慢慢速连接的加载时间。其他部分是通过PHP和AJAX生成的,因此不能进行缓存。

我成功使用cache.manifest来缓存静态内容,例如图像,但我注意到动态页面没有使用它们。相反,他们正在再次下载图像,即使它们已被缓存,使得缓存无用。

因为我的动态内容是基于GET请求生成的,所以动态页面位于清单的NETWORK部分(例如“user?*”)。可能与它有关吗?有没有办法可以强制使用缓存的图像?

注意:动态页面的完全引用(例如“user?id = 22”)当然不在清单中。这会使这些页面的缓存无法访问吗?

1 个答案:

答案 0 :(得分:0)

似乎我已经提出了自己的解决方案。

由于缓存动态页面(例如" user.php?id = 22")破坏了我的应用程序,我尝试插入包含对清单的引用的iframe,而不是在页面本身上引用它。这对我来说似乎没有。

我现在在清单的CACHE部分中的动态页面中包含带通配符的显式引用。这确实有效。他们现在完全使用参数等进行缓存。 (因此应用程序仍然可用)但正在使用缓存的图像。可能不理想,但似乎是一个非常简单的解决方案。

我还没有尝试删除那些iframe,但我猜他们可以删除它们。

CACHE MANIFEST
./user.php
./user.php?*
etc...
NETWORK:
./db_connect.php
etc...