При кешировании страницы HTML с помощью must-revalidate
это означает, что браузер должен проверять любое обновление, определенное Last-Modified
или Etag
. Однако проблема заключается в том, что до max-age
браузер не будет связываться с сайтом, чтобы читать HTTP-заголовки (для анализа Last-Modified
и Etag
)?Как кэшировать HTML-страницу с обязательным подтверждением?
Как заставить браузер сделать короткое соединение для чтения (по крайней мере) HTTP-считывателей перед загрузкой страницы из кеша?
Я не понимаю использование must-revalidate
! Не отвечает ли он за обновления до max-age
? потому что после достижения max-age
браузер будет читать с сайта и никогда не использовать локальный кеш.
очень полезная информация и практическое руководство, но я ничего не понял. Вы сказали, что «кеш не может служить этому контенту, когда он истек, но должен повторить проверку до этого». В любом случае, даже без 'must-revalidate', кеш НЕ будет обслуживаться, когда истек. – Googlebot
Если вы перечитали окончание 14.9.3 в RFC выше, в нем упоминается, что не только кэши могут быть настроены для обслуживания устаревших ответов, клиенты (браузеры) могут использовать «max-stale», чтобы указать, что устаревший ответ прекрасен. Он также упоминает, что заголовок 'Warning' должен быть присоединен. –