AWS CLI CloudFront Invalidate All Files

Я пытаюсь сделать недействительным весь статический сайт. Следующая команда, по-видимому, не делает недействительной /index.html и дает нечетный вывод элементов, которые должны быть недействительными, как показано ниже. Это поведение AWS CLI нормально или я что-то упустил? Спасибо!

aws cloudfront create-invalidation --distribution-id $DISTRIBUTION_ID --paths /*

Выход:

{
    "Invalidation": {
    "Status": "InProgress", 
    "InvalidationBatch": {
        "Paths": {
            "Items": [
                "/lib32", 
                "/home", 
                "/vmlinuz", 
                "/core", 
                "/proc", 
                "/var", 
                "/dev", 
                "/usr", 
                "/etc", 
                "/initrd.img", 
                "/cdrom", 
                "/lost+found", 
                "/root", 
                "/tmp", 
                "/lib", 
                "/dead.letter", 
                "/lib64", 
                "/boot", 
                "/sys", 
                "/run", 
                "/bin", 
                "/sbin", 
                "/mnt", 
                "/opt", 
                "/snap", 
                "/media", 
                "/copyright", 
                "/srv"
            ], 
            "Quantity": 28
        }, 

Ответ 1

Что ваша оболочка делает расширение локальных имен файлов.

Это то, о чем вы просите, поскольку * не цитируется.

Либо --paths '*', либо Задание --paths '/*' & sup1; будет делать то, что вы намерены. Цитирование шаблона сохраняет его как литеральную строку, а не то, что вы видите.


& sup1; консоль CloudFront позволяет указать либо *, либо /*, чтобы аннулировать весь дистрибутив; напротив, CLI ожидает /*. Это, в свою очередь, связано с тем, что базовый API также ожидает /*. Когда вы используете * в консоли, ведущая косая черта тихо добавляется консолью, прежде чем консоль сделает запрос к API CloudFront.

Ответ 2

Пример аннулирования распространения облачного фронта через aws cli:

aws cloudfront create-invalidation --distribution-id <DistributionID> --paths "/*"

Пример:

aws cloudfront create-invalidation --distribution-id E1B1A4GHK9TTE --paths "/*"

Для получения списка или получения идентификатора распространения Cloudfront вы можете использовать консоль или через cli:

aws cloudfront list-distributions 
aws cloudfront list-distributions | grep Id