Fehlerbehebung bei Problemen mit der Verteilung - Amazon CloudFront

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Fehlerbehebung bei Problemen mit der Verteilung

Verwenden Sie die Informationen hier, um Ihnen bei der Diagnose und Behebung von Zertifikatsfehlern, Problemen mit verweigertem Zugriff oder anderen häufig auftretenden Problemen zu helfen, die bei der Einrichtung Ihrer Website oder Anwendung mit CloudFront Amazon-Distributionen auftreten können.

CloudFront gibt eine zurück Access Denied error

Wenn Sie einen Amazon S3 S3-Bucket als Ursprung für Ihre CloudFront Distribution verwenden, wird in den folgenden Beispielen möglicherweise die Fehlermeldung Access Denied (403) angezeigt.

Sie haben ein fehlendes Objekt aus dem Amazon S3 S3-Ursprung angegeben

Stellen Sie sicher, dass das angeforderte Objekt in Ihrem Bucket vorhanden ist. Bei Objektnamen wird zwischen Groß- und Kleinschreibung unterschieden. Die Eingabe eines ungültigen Objektnamens kann den Fehlercode „Zugriff verweigert“ zurückgeben.

Wenn Sie beispielsweise dem CloudFront Tutorial zum Erstellen einer Basisdistribution folgen, erstellen Sie einen Amazon S3 S3-Bucket als Ursprung und laden eine index.html Beispieldatei hoch.

Wenn Sie in Ihrem Webbrowser https://d111111abcdef8.cloudfront.net/INDEX.HTML statt von eingeben, wird möglicherweise eine ähnliche Meldung angezeigthttps://d111111abcdef8.cloudfront.net/index.html, da bei der index.html Datei im URL Pfad zwischen Groß- und Kleinschreibung unterschieden wird.

<Error> <Code>AccessDenied</Code> <Message>Access Denied</Message> <RequestId>22Q367AHT7Y1ABCD</RequestId> <HostId> ABCDE/Vg+7PSNa/d/IfFQ8Fb92TGQ0KH0ZwG5iEKbc6+e06DdMS1ZW+ryB9GFRIVtS66rSSy6So= </HostId> </Error>

Ihrem Amazon S3 S3-Ursprung fehlen IAM Berechtigungen

Stellen Sie sicher, dass Sie den richtigen Amazon S3 S3-Bucket als Ursprungsdomain und -namen ausgewählt haben. Der Ursprung (Amazon S3) muss über die richtigen Berechtigungen verfügen.

Wenn Sie nicht die richtigen Berechtigungen angeben, kann für Ihre Zuschauer die folgende Meldung „Zugriff verweigert“ angezeigt werden.

<Code>AccessDenied</Code> <Message>User: arn:aws:sts::856369053181:assumed-role/OriginAccessControlRole/EdgeCredentialsProxy+EdgeHostAuthenticationClient is not authorized to perform: kms:Decrypt on the resource associated with this ciphertext because the resource does not exist in this Region, no resource-based policies allow access, or a resource-based policy explicitly denies access</Message> <RequestId>22Q367AHT7Y1ABCD/RequestId> <HostId> ABCDE/Vg+7PSNa/d/IfFQ8Fb92TGQ0KH0ZwG5iEKbc6+e06DdMS1ZW+ryB9GFRIVtS66rSSy6So= </HostId> </Error>
Anmerkung

In dieser Fehlermeldung handelt es sich bei der Konto-ID 856369053181 um ein verwaltetes Konto. AWS

Wenn Sie Inhalte von Amazon S3 verteilen und außerdem AWS Key Management Service (AWS KMS) die serviceseitige Verschlüsselung (SSE-KMS) verwenden, müssen Sie zusätzliche IAM Berechtigungen für den KMS Schlüssel und den Amazon S3 S3-Bucket angeben. Ihre CloudFront Distribution benötigt diese Berechtigungen, um den KMS Schlüssel zu verwenden, der für die Verschlüsselung des ursprünglichen Amazon S3 S3-Buckets verwendet wird.

Die Konfigurationen der Amazon S3 S3-Bucket-Richtlinie ermöglichen es der CloudFront Distribution, die verschlüsselten Objekte für die Inhaltsbereitstellung abzurufen.

Um Ihren Amazon S3 S3-Bucket und Ihre KMS Schlüsselberechtigungen zu überprüfen
  1. Stellen Sie sicher, dass der KMS Schlüssel, den Sie verwenden, derselbe Schlüssel ist, den Ihr Amazon S3 S3-Bucket für die Standardverschlüsselung verwendet. Weitere Informationen finden Sie unter Serverseitige Verschlüsselung mit AWS KMS (SSE-KMS) angeben im Amazon Simple Storage Service-Benutzerhandbuch.

  2. Stellen Sie sicher, dass die Objekte im Bucket mit demselben KMS Schlüssel verschlüsselt sind. Sie können ein beliebiges Objekt aus dem Amazon S3 S3-Bucket auswählen und die serverseitigen Verschlüsselungseinstellungen überprüfen, um den KMS Schlüssel ARN zu verifizieren.

  3. Bearbeiten Sie die Amazon S3 S3-Bucket-Richtlinie, um die CloudFront Erlaubnis zu erteilen, den GetObject API Vorgang vom Amazon S3 S3-Bucket aus aufzurufen. Ein Beispiel für eine Amazon S3 S3-Bucket-Richtlinie, die Origin Access Control verwendet, finden Sie unterErteilen Sie dem Absender die Zugriffsberechtigung für den Zugriff auf den S3-Bucket.

  4. Bearbeiten Sie die KMS Schlüsselrichtlinie, um, und die CloudFront Erlaubnis zu erteilen EncryptDecrypt, die Aktionen auszuführenGenerateDataKey*. Geben Sie ein Condition Element an, sodass nur die angegebene Distribution die aufgelisteten Aktionen ausführen kann, damit nur die angegebene CloudFront Distribution die aufgelisteten Aktionen ausführen kann. Sie können die Richtlinie an Ihre bestehende AWS KMS Richtlinie anpassen. Ein Beispiel für eine KMS wichtige Richtlinie finden Sie unterSSE-KMS.

Wenn Sie stattdessen Origin Access Identity (OAI) verwendenOAC, unterscheiden sich die Berechtigungen für den Amazon S3 S3-Bucket geringfügig, da Sie die Berechtigung für eine Identität statt für die erteilen AWS-Service. Weitere Informationen finden Sie unter Erteilen Sie einer Origin-Zugriffsidentität die Erlaubnis, Dateien im Amazon S3 S3-Bucket zu lesen.

Wenn Sie Ihre Dateien in Ihrer Distribution immer noch nicht anzeigen können, finden Sie weitere Informationen unterIch kann die Dateien in meiner Verteilung nicht anzeigen..

Sie verwenden ungültige Anmeldeinformationen oder verfügen nicht über ausreichende Berechtigungen

Eine Fehlermeldung „Zugriff verweigert“ kann angezeigt werden, wenn Sie falsche oder abgelaufene AWS SCT Anmeldeinformationen (Zugriffsschlüssel und geheimer Schlüssel) verwenden oder wenn Ihrer IAM Rolle oder Ihrem Benutzer die erforderliche Berechtigung zum Ausführen einer Aktion für eine CloudFront Ressource fehlt. Weitere Informationen zu Fehlermeldungen mit Zugriffsverweigerung finden Sie unter Problembehandlung bei Fehlermeldungen mit Zugriffsverweigerung im IAMBenutzerhandbuch.

Informationen dazu, wie IAM funktioniert mit CloudFront, finden Sie unterIdentity and Access Management für Amazon CloudFront.

CloudFront gibt eine InvalidViewerCertificate Fehler, wenn ich versuche, einen alternativen Domainnamen hinzuzufügen

Wenn beim Versuch, Ihrer Distribution einen alternativen Domainnamen (CNAME) hinzuzufügen, ein InvalidViewerCertificate Fehler CloudFront zurückgegeben wird, lesen Sie sich die folgenden Informationen durch, um das Problem zu beheben. Dieser Fehler kann darauf hinweisen, dass Sie eines der folgenden Probleme lösen müssen, bevor Sie den alternativen Domänennamen erfolgreich hinzufügen können.

Die folgenden Fehler sind in der Reihenfolge aufgeführt, in der CloudFront geprüft wird, ob eine Autorisierung für das Hinzufügen eines alternativen Domainnamens vorliegt. Dies kann Ihnen bei der Behebung von Problemen helfen, da Sie anhand des CloudFront zurückgegebenen Fehlers feststellen können, welche Überprüfungsprüfungen erfolgreich abgeschlossen wurden.

Ihrer Verteilung ist kein Zertifikat angefügt.

Um einen alternativen Domainnamen (CNAME) hinzuzufügen, müssen Sie Ihrer Distribution ein vertrauenswürdiges, gültiges Zertifikat beifügen. Überprüfen Sie die Anforderungen, erwerben Sie ein gültiges Zertifikat, das diese Anforderungen erfüllt, und wiederholen Sie den Vorgang. Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung von alternativen Domänennamen.

Es gibt zu viele Zertifikate in der Zertifikatskette für das von Ihnen angefügte Zertifikat.

Die Zahl der Zertifikate in einer Zertifikatskette ist auf fünf beschränkt. Reduzieren Sie die Anzahl der Zertifikate in der Kette und wiederholen Sie den Vorgang.

Die Zertifikatskette enthält mindestens ein Zertifikat, das für das aktuelle Datum nicht gültig ist.

Die Zertifikatskette für ein von Ihnen hinzugefügtes Zertifikat enthält mindestens ein ungültiges Zertifikat, das entweder noch nicht gültig oder abgelaufen ist. Überprüfen Sie die Felder Not Valid Before (Nicht gültig vor) und Not Valid After (Nicht gültig nach) in den Zertifikaten in Ihrer Zertifikatskette, um sicherzustellen, dass alle Zertifikate basierend auf den von Ihnen aufgelisteten Daten gültig sind.

Das von Ihnen angefügte Zertifikat wurde nicht von einer vertrauenswürdigen Zertifizierungsstelle (Certificate Authority, CA) signiert.

Bei dem Zertifikat, das Sie CloudFront zur Überprüfung eines alternativen Domainnamens anhängen, kann es sich nicht um ein selbstsigniertes Zertifikat handeln. Es muss von einer vertrauenswürdigen CA signiert worden sein. Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung von alternativen Domänennamen.

Das von Ihnen angefügte Zertifikat ist nicht korrekt formatiert.

Das Format des Domänennamens und der IP-Adresse im Zertifikat und das Format des Zertifikats selbst müssen den Standards für Zertifikate folgen.

Es ist ein CloudFront interner Fehler aufgetreten.

CloudFront wurde durch ein internes Problem blockiert und es konnten keine Validierungsprüfungen für Zertifikate durchgeführt werden. Gibt in diesem Szenario den Statuscode HTTP 500 CloudFront zurück und weist darauf hin, dass ein internes CloudFront Problem beim Anhängen des Zertifikats vorliegt. Warten Sie einige Minuten und wiederholen Sie dann den Vorgang, um dem Zertifikat den alternativen Domänennamen hinzuzufügen.

Das von Ihnen angefügte Zertifikat deckt den alternativen Domänennamen nicht ab, den Sie hinzufügen möchten.

Für jeden alternativen Domainnamen, den Sie hinzufügen, CloudFront müssen Sie ein gültiges SSL TLS /-Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle (CA) beifügen, das den Domainnamen abdeckt, um Ihre Autorisierung zur Verwendung des Domainnamens zu bestätigen. Bitte aktualisieren Sie Ihr Zertifikat so, dass es einen Domainnamen enthält, der den Domainnamen abdecktCNAME, den Sie hinzufügen möchten. Weitere Informationen und Beispiele zur Verwendung von Domänennamen mit Platzhalterzeichen finden Sie unter Voraussetzungen für die Verwendung von alternativen Domänennamen.

CloudFront gibt einen falsch konfigurierten DNS Datensatzfehler zurück, wenn ich versuche, einen neuen hinzuzufügen CNAME

Wenn ein vorhandener DNS Platzhaltereintrag auf eine CloudFront Distribution verweist, kann beim Versuch, eine neue CNAME mit einem genaueren Namen hinzuzufügen, der folgende Fehler auftreten:

One or more aliases specified for the distribution includes an incorrectly configured DNS record that points to another CloudFront distribution. You must update the DNS record to correct the problem.

Dieser Fehler tritt auf, weil CloudFront Abfragen DNS gegen den CNAME und der DNS Platzhaltereintrag in eine andere Verteilung aufgelöst wird.

Um dieses Problem zu beheben, erstellen Sie zunächst eine weitere Verteilung und dann einen DNS Eintrag, der auf die neue Verteilung verweist. Fügen Sie abschließend die spezifischere hinzuCNAME. Weitere Informationen zum Hinzufügen finden Sie CNAMEs unterFügen Sie einen alternativen Domainnamen hinzu.

Ich kann die Dateien in meiner Verteilung nicht anzeigen.

Wenn Sie die Dateien in Ihrer CloudFront Distribution nicht anzeigen können, finden Sie in den folgenden Themen einige gängige Lösungen.

Haben Sie sich sowohl für Amazon S3 als CloudFront auch für Amazon S3 angemeldet?

Um Amazon CloudFront mit einem Amazon S3-Ursprung zu verwenden, müssen Sie sich CloudFront sowohl für Amazon S3 als auch für Amazon S3 separat registrieren. Weitere Informationen zur Registrierung für Amazon S3 CloudFront und Amazon S3 finden Sie unterRichten Sie Ihre ein AWS-Konto.

Sind Ihre Amazon-S3-Bucket- und Objektberechtigungen korrekt festgelegt?

Wenn Sie CloudFront mit einem Amazon S3 S3-Ursprung verwenden, werden die Originalversionen Ihrer Inhalte in einem S3-Bucket gespeichert. Die einfachste Möglichkeit, Amazon S3 CloudFront zu verwenden, besteht darin, alle Ihre Objekte in Amazon S3 öffentlich lesbar zu machen. Hierfür müssen Sie die öffentlichen Leseberechtigungen für jedes Objekt, das Sie auf Amazon S3 hochladen, explizit aktivieren.

Wenn Ihre Inhalte nicht öffentlich lesbar sind, müssen Sie eine CloudFront Ursprungszugriffskontrolle (OAC) einrichten, damit CloudFront Sie darauf zugreifen können. Weitere Informationen zur CloudFront Herkunftszugriffskontrolle finden Sie unterBeschränken Sie den Zugriff auf einen Amazon Simple Storage Service-Ursprung.

Objekteigenschaften und Bucket-Eigenschaften existieren unabhängig voneinander. Sie müssen jedem Objekt in Amazon S3 explizit Berechtigungen zuweisen. Objekte erben ihre Eigenschaften nicht von Buckets; Objekteigenschaften müssen unabhängig vom jeweiligen Bucket festgelegt werden.

Ist Ihr alternativer Domainname (CNAME) korrekt konfiguriert?

Wenn Sie bereits einen CNAME Datensatz für Ihren Domainnamen haben, aktualisieren Sie diesen Datensatz oder ersetzen Sie ihn durch einen neuen, der auf den Domainnamen Ihrer Distribution verweist.

Stellen Sie außerdem sicher, dass Ihr CNAME Datensatz auf den Domainnamen Ihrer Distribution verweist, nicht auf Ihren Amazon S3 S3-Bucket. Sie können bestätigen, dass der CNAME Datensatz in Ihrem DNS System auf den Domainnamen Ihrer Distribution verweist. Verwenden Sie dazu ein DNS Tool wiedig.

Das folgende Beispiel zeigt eine Dig-Anfrage für eine Domain mit dem Namen images.example.com sowie den relevanten Teil der Antwort. Unter ANSWER SECTION finden Sie eine Zeile, die den CNAME-Wert enthält. Der CNAME Datensatz für Ihren Domainnamen ist korrekt eingerichtet, wenn der Wert auf der rechten Seite von CNAME der Domainname Ihrer CloudFront Distribution entspricht. Wenn es sich um Ihren Amazon S3 S3-Ursprungsserver-Bucket oder einen anderen Domainnamen handelt, ist der CNAME Datensatz falsch eingerichtet.

[prompt]> dig images.example.com ; <<> DiG 9.3.3rc2 <<> images.example.com ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15917 ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;images.example.com. IN A ;; ANSWER SECTION: images.example.com. 10800 IN CNAME d111111abcdef8.cloudfront.net. ... ...

Weitere Informationen zu finden CNAMEs Sie unterVerwenden Sie benutzerdefiniert, URLs indem Sie alternative Domainnamen hinzufügen () CNAMEs.

Verweisen Sie auf das Richtige URL für Ihre CloudFront Distribution?

Stellen Sie sicher, URL dass die, auf die Sie verweisen, den Domainnamen (oderCNAME) Ihrer CloudFront Distribution verwendet, nicht Ihren Amazon S3 S3-Bucket oder Ihre benutzerdefinierte Herkunft.

Benötigen Sie Hilfe bei der Fehlerbehebung in Zusammenhang mit einem benutzerdefinierten Ursprungsserver?

Wenn Sie bei der Fehlerbehebung für einen benutzerdefinierten Ursprung helfen müssen AWS , müssen wir wahrscheinlich die X-Amz-Cf-Id Header-Einträge Ihrer Anfragen überprüfen. Wenn Sie diese Einträge nicht bereits protokollieren, sollten Sie das für die Zukunft in Erwägung ziehen. Weitere Informationen finden Sie unter Verwenden Sie Amazon EC2 (oder einen anderen benutzerdefinierten Ursprung). Weitere Hilfe erhalten Sie im AWS -Supportcenter.

Fehlermeldung: Zertifikat: <certificate-id>wird verwendet von CloudFront

Problem: Sie versuchen, ein SSL TLS /-Zertifikat aus dem IAM Zertifikatsspeicher zu löschen, und Sie erhalten die Meldung „Zertifikat: <certificate-id>wird verwendet von CloudFront.“

Lösung: Jede CloudFront Distribution muss entweder dem CloudFront Standardzertifikat oder einem benutzerdefinierten Zertifikat zugeordnet sein, um das SSL/TLS certificate. Before you can delete an SSL/TLS certificate, you must either rotate the certificate (replace the current custom SSL/TLS certificate with another custom SSL/TLS certificate) or revert from using a custom SSL/TLS CloudFront Standardzertifikat verwenden zu können. Um dies zu beheben, führen Sie die Schritte in einem der folgenden Verfahren aus: