Люди, которые создали рекомендацию о максимальном сроке хранения в 1 год, не продумали ее должным образом.
Прежде всего, если посетителю обслуживается устаревший кешированный файл, то почему он дает какую-либо выгоду, если он внезапно загружает новую версию через 1 год? Если файл имеет годичный TTL, с функциональной точки зрения это, очевидно, означает, что файл не предназначен для изменения вообще.
Так зачем нужно больше года?
1) Почему бы и нет? Нет никакой необходимости сообщать браузеру посетителей: «Эй, этому файлу 1 год, возможно, стоит проверить, обновился ли он».
2) Службы CDN. Большинство сетей доставки контента используют заголовок кэша, чтобы решить, как долго обслуживать файл с пограничного сервера. Если у вас есть 1-летний контроль кэша для файлов, он в какой-то момент начнет повторный запрос неизмененных файлов с исходного сервера, и пограничный кэш потребуется полностью заполнить, что приведет к более медленной загрузке для клиента и ненужным звонки на источник.
Какой смысл иметь максимум 1 год? Какие браузеры будут подавляться на сумму, установленную выше 31536000?