Причина в том, что Google хочет, чтобы пользователь кэшировал изображение, а не промежуточные общие кэши (следовательно, директива private
).
Многие промежуточные системы кеширования могут быть устаревшими и игнорировать новые функции HTTP (как заголовок управления кэшем), поэтому этот подход не позволяет им кэшировать ресурс (через заголовок expires
).Для остальных агентов, понимающих и то, и другое, переопределения контроля кэша истекает заголовок.
Это обычная практика, указанная в rfc2616 sec14.9.3
ИсточникСервер может захотеть использовать относительно новую функцию управления кешем HTTP, такую как директива private, в сети, включая старые кеши, которые не понимают эту функцию.Исходный сервер должен будет объединить новую функцию с полем Expires, значение которого меньше или равно значению Date.Это предотвратит неправильное кэширование ответа старыми кешами.