Как определить
<meta http-equiv="cache-control" content="no-cache" />
в HTML5? Он больше не действует в соответствии с W3C Validator и документацией.
Как определить
<meta http-equiv="cache-control" content="no-cache" />
в HTML5? Он больше не действует в соответствии с W3C Validator и документацией.
Включение инструкций кэширования в метатеги не является хорошей идеей, потому что, хотя браузеры могут их читать, прокси не будут. По этой причине они недействительны, и вы должны отправлять инструкции кэширования в качестве настоящих HTTP-заголовков.
В начале кода вы должны использовать это:
<!DOCTYPE html>
<html manifest="cache.manifest">
...
Затем создайте файл cache.manifest с содержимым того, что вы хотите кэшировать i.e
CACHE MANIFEST
# 2010-06-18:v2
# Explicitly cached 'master entries'.
CACHE:
/favicon.ico
index.html
stylesheet.css
images/logo.png
scripts/main.js
# Resources that require the user to be online.
NETWORK:
*
# static.html will be served if main.py is inaccessible
# offline.jpg will be served in place of all images in images/large/
# offline.html will be served in place of all other .html files
FALLBACK:
/main.py /static.html
images/large/ images/offline.jpg
В манифесте могут быть три различных раздела: CACHE, NETWORK и FALLBACK.
CACHE: Это раздел по умолчанию для записей. Файлы, перечисленные в этом заголовке (или сразу после CACHE MANIFEST), будут явно кэшированы после их загрузки в первый раз.
СЕТЬ: Файлы, перечисленные в этом разделе, могут поступать из сети, если они не находятся в кеше, иначе сеть не будет использоваться, даже если пользователь подключен к сети. Здесь вы можете указывать конкретные URL-адреса белого списка или просто ", что позволяет использовать все URL-адреса. Большинство сайтов необходимо" ".
FALLBACK: Необязательный раздел, указывающий резервные страницы, если ресурс недоступен. Первым URI является ресурс, второй - резерв, используемый при сбое сетевого запроса или ошибках. Оба URI должны иметь тот же источник, что и файл манифеста. Вы можете захватывать определенные URL-адреса, а также префиксы URL. "images/large/" будет отображать сбои от URL-адресов, таких как "images/large/whatever/img.jpg".
Нет HTML-решения. Кэш приложения Mozilla (cache.manifest) устарел. На сайте кэша приложений говорится:
Эта функция удалена из веб-стандартов. Хотя некоторые браузеры все еще могут его поддерживать, он находится в процессе отбрасывания. Избегайте его использования и, если это возможно, обновите существующий код.... Используйте Рабочие службы вместо.
Кроме того, я предлагаю вам использовать HTTP Cache-Control для решения проблем с кешем.
Нет решения HTML, потому что это не проблема разметки. Кэширование - это действие на ресурсе, а не часть самого определения ресурса.
Как говорили другие, HTTP-заголовки - лучший способ контролировать кеши, потому что они наблюдаются всеми кешами - теги <meta>
наблюдаются только в кэшах браузера. Они должны быть установлены с помощью вашего сервера/веб-инфраструктуры.
Тем не менее, я не удивлюсь, если браузеры все еще наблюдают <meta http-equiv="cache-control" content="no-cache">
для страниц с типом HTML5.