Knowledge Center Monthly Newsletter - March 2025
Stay up to date with the latest from the Knowledge Center. See all new and updated Knowledge Center articles published in the last month and re:Post’s top contributors.
Come posso risolvere l'errore "One or more of your origins or origin groups do not exist" (Una o più delle tue origini o gruppi di origine non esistono) in AWS CloudFormation?
Quando provo a usare AWS CloudFormation per aggiornare una risorsa AWS::CloudFront::Distribution, ricevo l'errore seguente: "One or more of your origins or origin groups do not exist" (Una o più delle tue origini o gruppi di origine non esistono).
Risoluzione
Il valore TargetOriginId di CacheBehavior o DefaultCacheBehavior deve corrispondere a un ID della proprietà Origin o OriginGroups nella risorsa AWS::CloudFront::Distribution. Se gli ID non corrispondono, verrà visualizzato l'errore di origini o gruppi di origine inesistenti.
Questo errore si verifica quando imposti il valore TargetOriginId di un'origine che non esiste o che hai creato esternamente aCloudFormation. Durante un'operazione di aggiornamento, CloudFormation elimina tutte le origini e i gruppi di origine nella distribuzione che hai creato all'esterno di CloudFormation. Se stai usando l'origine o il gruppo di origine quando CloudFormation tenta l'eliminazione, riceverai l'errore.
Nota: è consigliabile non modificare le risorse dello stack esternamente a CloudFormation. Le modifiche all'esterno di CloudFormation possono creare una discrepanza tra il modello dello stack e lo stato corrente delle risorse dello stack.
Per risolvere questo problema, completa i passaggi seguenti:
- Apri la risorsa AWS::CloudFront::Distribution nel modello CloudFormation.
- Assicurati che ogni valore TargetOriginId corrisponda all'ID di una delle origini o dei gruppi di origine definiti nelle proprietà Origins o OriginGroups. Se l'ID non corrisponde, inserisci l'ID di origine corretto come parametro per DefaultCacheBehavior o CacheBehavior.
Nei frammenti seguenti di modelli JSON e YAML di esempio, DefaultCacheBehavior definisce e utilizza una distribuzione CloudFront con un'unica origine. Inoltre, l'origine utilizza un'identità di accesso origine (OAI) per l'autenticazione e l'origine è Amazon Simple Storage Service (Amazon S3).
Esempio JSON:
Esempio YAML:{ "AWSTemplateFormatVersion": "2010-09-09T00:00:00.000Z", "Resources": { "cloudfrontdistribution": { "Type": "AWS::CloudFront::Distribution", "Properties": { "DistributionConfig": { "DefaultCacheBehavior": { "ViewerProtocolPolicy": "https-only", "DefaultTTL": 3600, "ForwardedValues": { "Cookies": { "Forward": "none" }, "QueryString": true }, "TargetOriginId": "my-s3-origin" }, "Enabled": true, "Origins": [ { "DomainName": "my-s3-bucket.s3.amazonaws.com", "Id": "my-s3-origin", "S3OriginConfig": { "OriginAccessIdentity": { "Fn::Sub": "origin-access-identity/cloudfront/${CloudFrontOriginAccessIdentity}" } }, "OriginPath": "/my-content" } ] } } }, "CloudFrontOriginAccessIdentity": { "Type": "AWS::CloudFront::CloudFrontOriginAccessIdentity", "Properties": { "CloudFrontOriginAccessIdentityConfig": { "Comment": { "Ref": "AWS::StackName" } } } } } }
Nota: negli esempi precedenti, sostituisci my-s3-origin con il tuo ID di origine, my-s3-bucket.s3.amazonaws.com con il tuo nome di dominio e /my-content con il tuo percorso di origine.AWSTemplateFormatVersion: 2010-09-09 Resources: cloudfrontdistribution: Type: AWS::CloudFront::Distribution Properties: DistributionConfig: DefaultCacheBehavior: ViewerProtocolPolicy: https-only DefaultTTL: 3600 ForwardedValues: Cookies: Forward: none QueryString: true TargetOriginId: my-s3-origin Enabled: true Origins: - DomainName: 'my-s3-bucket.s3.amazonaws.com' Id: my-s3-origin S3OriginConfig: OriginAccessIdentity: !Sub origin-access-identity/cloudfront/${CloudFrontOriginAccessIdentity} OriginPath: /my-content CloudFrontOriginAccessIdentity: Type: AWS::CloudFront::CloudFrontOriginAccessIdentity Properties: CloudFrontOriginAccessIdentityConfig: Comment: !Sub ${AWS::StackName}
- Prova la tua distribuzione CloudFront per verificare che lo stack CloudFormation sia stato creato o aggiornato.
Informazioni correlate
Use various origins with CloudFront distributions

Contenuto pertinente
- AWS UFFICIALEAggiornata 7 mesi fa
- AWS UFFICIALEAggiornata 9 mesi fa