缓存中的图像未被使用
Images in cache not getting used
我正在开发此 Web 应用程序,我想为其缓存一些静态内容以缩短慢速连接时的加载时间。其他部分正在通过 PHP 和 AJAX 生成,因此无法缓存。
我成功地使用 cache.manifest 来缓存静态内容,例如图像,但我注意到动态页面没有使用它们。相反,他们再次下载图像,即使它们已被缓存,使缓存无用。
因为我的动态内容是基于 GET 请求生成的,所以动态页面位于清单的 NETWORK 部分(例如 "user?*")。这可能与它有关吗?有没有办法强制使用缓存的图像?
注意:对动态页面的确切完整引用(例如 "user?id=22")当然不在清单中。这是否会使这些页面无法访问缓存?
看来我已经找到了自己的解决方案。
由于缓存动态页面(例如 "user.php?id=22")破坏了我的应用程序,我尝试插入一个包含对清单的引用的 iframe,而不是在页面本身上引用它。那似乎对我没有帮助。
我现在在清单的 CACHE 部分中包含一个带有通配符的对动态页面的显式引用。这似乎确实有效。它们现在 不会 完全使用参数等进行缓存。 (因此应用程序保持功能)但正在使用缓存的图像。可能不理想,但似乎是一个非常简单的解决方案。
我还没有尝试删除那些 iframe,但我猜它们可以被删除。
CACHE MANIFEST
./user.php
./user.php?*
etc...
NETWORK:
./db_connect.php
etc...
我正在开发此 Web 应用程序,我想为其缓存一些静态内容以缩短慢速连接时的加载时间。其他部分正在通过 PHP 和 AJAX 生成,因此无法缓存。
我成功地使用 cache.manifest 来缓存静态内容,例如图像,但我注意到动态页面没有使用它们。相反,他们再次下载图像,即使它们已被缓存,使缓存无用。
因为我的动态内容是基于 GET 请求生成的,所以动态页面位于清单的 NETWORK 部分(例如 "user?*")。这可能与它有关吗?有没有办法强制使用缓存的图像?
注意:对动态页面的确切完整引用(例如 "user?id=22")当然不在清单中。这是否会使这些页面无法访问缓存?
看来我已经找到了自己的解决方案。
由于缓存动态页面(例如 "user.php?id=22")破坏了我的应用程序,我尝试插入一个包含对清单的引用的 iframe,而不是在页面本身上引用它。那似乎对我没有帮助。
我现在在清单的 CACHE 部分中包含一个带有通配符的对动态页面的显式引用。这似乎确实有效。它们现在 不会 完全使用参数等进行缓存。 (因此应用程序保持功能)但正在使用缓存的图像。可能不理想,但似乎是一个非常简单的解决方案。
我还没有尝试删除那些 iframe,但我猜它们可以被删除。
CACHE MANIFEST
./user.php
./user.php?*
etc...
NETWORK:
./db_connect.php
etc...