Я использую S3 для хранения набора изображений и CloudFront для их кэширования. Проблема, с которой я сталкиваюсь, заключается в том, что мои изображения неправильно кэшируются.
Если я проверю заголовки изображения по ссылке CloudFront, при первой попытке будет показано ПРОМАХ, а при всех последующих попытках — ПОПАДАНИЕ. Это нормально, но если я закрою браузер, уйду на несколько часов и повторю попытку, он покажет MISS. Следовательно, это указывает на то, что он кэшируется только на короткий период.
Вот пример изображения на КДС: http://d711ds9nsj32q.cloudfront.net/static/8e1f8567e229e24e0782ed_1e994b9dc56ba092ecd2_5.jpg
Странное поведение заключается в том, что если вы попытаетесь перехватить заголовки с помощью web-sniffer.net, вы увидите MISS каждый раз. Несмотря на то, что элемент управления кешем public, max-age=315360000
и срок его действия истекает через 10 лет.
Как правильно кэшировать что-то на 10 лет в облаке? Есть ли какие-то дополнительные заголовки, которые мне не хватает?
Правка: для сравнения то же изображение на imgur. Они используют cloudflare, но поведение, которое я вижу, правильное. Как только он кэшируется, я больше никогда не вижу промаха ни с одного из моих компьютеров или из близлежащих мест. И мои заголовки, и их заголовки похожи, за исключением нескольких (неважных) отличий. Любая помощь приветствуется.