Может ли новый HTML5 файл manifest.cache содержать пути к каталогам? - PullRequest
11 голосов
/ 31 января 2011

При использовании возможности HTML5 указывать, кэшируются ли файлы / как (в файле manifest.cache), возможно ли указание целых каталогов?Могу ли я поместить путь к каталогу с изображениями в разделе CACHE: и применить его ко всем файлам в этом каталоге, или мне нужно явно указать файлы изображений для кэширования?это возможно?

CACHE MANIFEST

...

CACHE:
images/

... или, может быть, это?

CACHE MANIFEST

...

CACHE:
images/*

... или мне нужно сделать это:

CACHE MANIFEST

...

CACHE:
images/logo.png
images/image01.jpg
images/image02.jpg
images/image03.jpg
... (etc)

Ответы [ 2 ]

15 голосов
/ 12 апреля 2012

К сожалению, третий пример является правильным - перечислите каждый файл отдельно. html5 статья доктора была неправильной на момент публикации вопроса, и с тех пор в нее были внесены изменения.
Подстановочный знак * разрешен только в разделе «белый список онлайн»:

NETWORK:
*

, которая позволяет загружать любые необходимые файлы во время просмотра в Интернете, если они еще не загружены (как обычно).
Существует также «шаблон пути страницы» раздела Fallback:

FALLBACK:
/ /offline.html

это вроде как подстановочный знак. Начальный / будет соответствовать пути к каждой странице на вашем сайте, поэтому любая страница, которая не найдена в кэше, будет использовать /offline.html в качестве запасного запасного варианта. (Обратите внимание на расстояние между двумя слешами.)

1 голос
/ 16 января 2013

Я думаю, что вы могли бы получить «подстановочный знак», создав файл .manifest (или .cache в вашем примере) с помощью файла PHP.Таким образом, вы можете позволить PHP справиться с проблемой сохранения имен файлов путем сканирования каталогов, повторяя каждое имя файла.Вероятно, лучше всего позволить PHP разместить файл .manifest на вашем сервере, в противном случае автономное приложение может подумать, что файл манифеста обновился и постоянно обновлял кэш.

...