Имеется картинка в AWS S3, которую перезалили, но CloudFront отдаёт её старый вариант.
Что бы удалить её из кеша CloudFront – необходимо выполнить invalidation объекта.
Создать его можно из веб-панели, либо с помощью AWS CLI.
В веб-панели переходим в нужную дистрибьюцию, добавлем Invalidation:
И чистим кеш для всех картинок:
Либо – добавляем invalidation с помощью CLI:
[simterm]
$ aws --profile bm-backend cloudfront create-invalidation --distribution-id E3V72S54L4XFN5 --paths "/courses/images/youthful_face.png" { "Location": "https://cloudfront.amazonaws.com/2019-03-26/distribution/E3V72S54L4XFN5/invalidation/I1TU7YRJRXCOAF", "Invalidation": { "Id": "I1TU7YRJRXCOAF", "Status": "InProgress", "CreateTime": "2019-09-27T13:16:31.089Z", "InvalidationBatch": { "Paths": { "Quantity": 1, "Items": [ "/courses/images/youthful_face.png" ] }, "CallerReference": "cli-1569590190-500229" } } }
[/simterm]
Пошёл процесс очистки кеша:
По умолчанию – CloudFront держит данные в кеше 24 часа, при необходимости – можно изменить TTL объектов в настройках дистрибьюции:
Готово.