Я работаю над этим веб-приложением, для которого я хотел бы кэшировать статический контент, чтобы уменьшить время загрузки при медленном соединении. Другие части генерируются через PHP и AJAX и поэтому не могут быть кэшированы.
Я успешно использую cache.manifest для кэширования статического содержимого, например изображений, но замечаю, что динамические страницы их не используют. Вместо этого они загружают изображения снова, даже если они были кешированы, что делает кеширование бесполезным.
Поскольку мой динамический контент генерируется на основе GET-запросов, динамические страницы находятся в разделе NETWORK манифеста (например, «user? *»). Может быть, это как-то связано с этим? Есть ли способ принудительно использовать кэшированные изображения?
Примечание: точная полная ссылка на динамические страницы (например, «user? Id = 22»), конечно, не указана в манифесте. Делает ли это кеш недоступным для этих страниц?
Кажется, я придумала собственное решение.
Поскольку кэширование динамических страниц (например, «user.php? Id = 22») нарушало работу моего приложения, я попытался вставить iframe, содержащий ссылку на манифест, вместо ссылки на него на самой странице. Это, казалось, не сделало это для меня.
Теперь я включаю явную ссылку с подстановочным знаком на динамические страницы в разделе CACHE манифеста. Это похоже на работу. Они сейчас не кэширование полностью с параметрами и др. (поэтому приложение остается работоспособным), но использует кэшированные изображения. Не может быть идеальным, но кажется довольно простым решением.
Я еще не пытался удалить эти iframes, но я думаю, что они могут быть удалены.
CACHE MANIFEST
./user.php
./user.php?*
etc...
NETWORK:
./db_connect.php
etc...
Других решений пока нет …