В чем разница между ответом HTTP с Cache-Control: no-cache
и Cache-Control: max-age=0, must-revalidate, proxy-revalidate
?
Считают ли браузеры это идентичным?
В чем разница между ответом HTTP с Cache-Control: no-cache
и Cache-Control: max-age=0, must-revalidate, proxy-revalidate
?
Считают ли браузеры это идентичным?
В общем, разные браузеры ведут себя по-разному. Заголовки кэша HTTP.
Я помню одно небольшое отличие (не могу найти источник, поэтому я не на 100%, это точное описание поведения) заключается в том, что Chrome (справедливо) обрабатывает max-age=0
, как если бы вы указали max-age=10
(при условии, что разница в поведении достаточно мала, но влияние на производительность по-прежнему значимо).
В любом случае, вот еще несколько примеров различий в поведении кэша HTTP между браузерами:
Pragma
), другие отдают предпочтение заголовкам кэша HTTP 1.1.no-store
и хранят данные в зашифрованном виде. тайникno-cache
, указанную после public
, другие нет.max-age
, когда присутствует vary
.Моя общая рекомендация состоит в том, чтобы использовать как Cache-Control: no-cache, must-revalidate, proxy-revalidate
, pragma: no-cache
(HTTP 1.0), так и Expires: 0
, чтобы убедиться, что все браузеры не кэшируют содержимое с этими заголовками.
max-age=0
так, как если бы мы указали max-age=10
?
- person Pacerier; 15.08.2014