Единственная существенная ошибка, связанная с длительным временем кэширования, возникает, когда вы хотите обновить эти данные. Чтобы быть в безопасности, вы должны предположить, что новая версия станет доступной до недели. Промежуточные хосты, такие как прокси-серверы уровня ISP, часто активно кэшируют, поэтому такая задержка произойдет.
Если есть большие файлы для кэширования, я хотел бы убедиться, что ваш движок контента поддерживает If-Modified-Since.
Для файлов меньшего размера (содержимое страницы, CSS, изображения и т. Д.), Где сокращение числа обращений является ключевым фактором, с длительным сроком действия (год?) И изменением URL-адреса при изменении содержимого, лучше , Это позволяет вам контролировать, когда пользовательские агенты будут загружать новый контент.
Yahoo! опубликовали статью из двух частей о сокращении HTTP-запросов и использовании кэша браузера . Я не буду повторять все это здесь, но это хорошее чтение, которое поможет вам в том, что делать.
Мне кажется, что нужно выбрать период времени, достаточно высокий, чтобы охватить большинство пользовательских сессий, но достаточно низкий, чтобы не причинять слишком много неудобств, если вы захотите обновить контент. Обязательно поддержите If-Modified-Since, если у вас есть Last-Modified для всего вашего контента.
Наконец, если ваш контент вообще кешируется, и вам нужно выдвинуть новый контент сейчас, вы всегда можете использовать новый URL. Этот окончательный URL-адрес кэшируемого содержимого может находиться за фиксированным HTTP 302-перенаправлением URL-адреса, если вы хотите опубликовать постоянную ссылку на последнюю версию.