Я хочу разместить мое одностраничное приложение на s3 с облачной областью. Единственная проблема заключается в том, что индексная страница не имеет версии, поскольку она является корневым объектом по умолчанию. Так кто-нибудь знает какую-либо хорошую практику, чтобы не кэшировать индексную страницу с облачным?Хостинг одной страницы с s3 и облаком
ответ
Вы можете настроить default root object в CloudFront, который указывает фактический файл, который CloudFront извлекает из источника, когда запрос указан для /
.
Выполнение новой версии корневой страницы выполняется путем изменения настроенного корневого объекта по умолчанию в дистрибутиве для указания на новый индексный файл.
Настройка этой опции не изменяет способ интерпретации других путей и не перенаправляет браузер на указанный объект. CloudFront просто перезаписывает путь в запросе перед отправкой запроса в начало.
У меня такая же проблема. Я думаю, лучшее решение, которое я нашел, это загрузить файл index.html на S3 с заголовком Cache-Control: max-age=0
. Это должно заставить CloudFront не кэшировать индексный файл, если Minimum TTL = 0
(Read more). Вы можете сделать это, используя AWS S3 cli (aws s3 cp
).
Другой вариант - аннулировать использование API недействительности, хотя для завершения аннулирования требуется от 10 до 30 минут.
Это не займет ~ 15 мин. обновить? – Esben
Прошло несколько минут, да. –