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.
Geben Sie ein Standard-Stammobjekt an
Sie können so konfigurieren CloudFront , dass ein bestimmtes Objekt (das Standard-Root-Objekt) zurückgegeben wird, wenn ein Benutzer (Viewer) die Stamm-URL für Ihre Distribution anfordert, anstatt ein Objekt in Ihrer Distribution anzufordern. Sie können ein Standard-Stammobjekt verwenden, um zu verhindern, dass der Inhalt Ihrer Distribution offengelegt wird.
Inhalt
So geben Sie ein Standardstammobjekt an
Um zu vermeiden, dass der Inhalt Ihrer Distribution offengelegt wird oder ein Fehler zurückgegeben wird, geben Sie ein Standard-Stammobjekt für Ihre Distribution an. Sie können den genauen Dateinamen oder den Pfad zur Datei angeben. Wenn es sich bei Ihrem Stammobjekt beispielsweise um eine index.html
Datei handelt, können Sie diesen Dateinamen angeben. Wenn sich Ihre index.html
Datei in einem anderen Ordner befindet, geben Sie stattdessen den Pfad an, z.
B. Wenn Sie einen Pfad zum Standard-Stammobjekt festlegen, geben Viewer-Anfragen an die Stamm-URL der Distribution die angegebene Datei aus diesem Pfad zurück. Sie können einen Dateipfad verwenden, um Ihre Inhalte flexibler am Ursprung zu organisieren, da sich Ihr Standard-Stammobjekt in einem Ordner statt auf Stammebene befinden kann. exampleFolderName
/index.html
So geben Sie ein Standardstammobjekt für Ihre Verteilung an
-
Laden Sie das Standardstammobjekt auf den Ursprung hoch, auf den Ihre Verteilung zeigt.
Der Dateityp kann jeder von CloudFront unterstützte Typ sein. Eine Liste der Einschränkungen für den Dateinamen finden Sie im
DefaultRootObject
Element in DistributionConfigder Amazon CloudFront API-Referenz.Anmerkung
Wenn der Dateiname des Standard-Stammobjekts zu lang ist oder ein ungültiges Zeichen enthält, wird der Fehler CloudFront zurückgegeben
HTTP 400 Bad Request - InvalidDefaultRootObject
. Außerdem wird der Code für 10 Sekunden CloudFront zwischengespeichert (standardmäßig) und die Ergebnisse werden in die Zugriffsprotokolle geschrieben. -
Vergewissern Sie sich, dass die Berechtigungen für das Objekt CloudFront mindestens Lesezugriff gewähren.
Weitere Informationen zu Amazon-S3-Berechtigungen finden Sie unter Identity and Access Management in Amazon S3 im Amazon-Simple-Storage-Service-Benutzerhandbuch.
-
Aktualisieren Sie Ihre Distribution mithilfe der CloudFront Konsole oder der CloudFront API so, dass sie auf das Standard-Root-Objekt verweist.
So geben Sie mithilfe der CloudFront Konsole ein Standard-Root-Objekt an:
Melden Sie sich bei der an AWS Management Console und öffnen Sie die CloudFront Konsole unterhttps://console.aws.amazon.com/cloudfront/v4/home
. -
Wählen Sie in der Liste der Verteilungen im oberen Bereich die zu aktualisierende Verteilung aus.
-
Wählen Sie im Bereich Settings (Einstellungen) auf der Registerkarte General (Allgemein) die Option Edit (Bearbeiten) aus.
-
Geben Sie im Dialogfeld Einstellungen bearbeiten im Feld Standard-Stammobjekt den Dateinamen oder Pfad zum Standard-Stammobjekt ein.
Tipp
Ihre Zeichenfolge darf nicht mit einem Schrägstrich (
/
) beginnen. Geben Sie nur den Objektnamen oder den Pfad zum Objekt an. Verwenden Sie beispielsweiseindex.html
oder
. Die Angabe einesexampleFolderName
/index.html/
oderexampleFolderName
/index.html/index.html
kann zu dem Fehler 403 Access Denied führen. -
Wählen Sie Änderungen speichern aus.
Um Ihre Konfiguration mithilfe der CloudFront API zu aktualisieren, geben Sie einen Wert für das
DefaultRootObject
Element in Ihrer Distribution an. Informationen zur Verwendung der CloudFront API zur Angabe eines Standard-Root-Objekts finden Sie UpdateDistributionin der Amazon CloudFront API-Referenz. -
Vergewissern Sie sich, dass Sie das Standardstammobjekt aktiviert haben, indem Ihre Stamm-URL anfragen. Wenn Ihr Standardstammobjekt im Browser nicht angezeigt wird, führen Sie die folgenden Schritte aus:
-
Vergewissern Sie sich, dass Ihre Distribution vollständig bereitgestellt wurde, indem Sie den Status Ihrer Distribution in der CloudFront Konsole einsehen.
-
Wiederholen Sie die Schritte 2 und 3, um sicherzustellen, dass Sie die richtigen Berechtigungen erteilt und die Konfiguration Ihrer Verteilung ordnungsgemäß aktualisiert haben, um das Standardstammobjekt anzugeben.
-
So funktioniert das Standardstammobjekt
Angenommen, die folgende Anfrage zeigt beispielsweise auf das Objekt image.jpg
:
https://d111111abcdef8.cloudfront.net/image.jpg
Im Gegensatz dazu zeigt die folgende Anfrage auf die Stamm-URL derselben Verteilung anstatt auf ein bestimmtes Objekt, wie im ersten Beispiel:
https://d111111abcdef8.cloudfront.net/
Wenn Sie ein Standardstammobjekt definieren, gibt eine Endbenutzeranfrage, welche den Stamm Ihrer Verteilung aufruft, das Standardstammobjekt zurück. Wenn Sie beispielsweise die Datei index.html
als Standardstammobjekt bestimmen, gibt eine Anfrage für:
https://d111111abcdef8.cloudfront.net/
Rückgabe:
https://d111111abcdef8.cloudfront.net/index.html
Anmerkung
CloudFront bestimmt nicht, ob eine URL mit mehreren abschließenden Schrägstrichen (https://d111111abcdef8.cloudfront.net///
) äquivalent zu ist. https://d111111abcdef8.cloudfront.net/
Ihr Ursprungsserver führt diesen Vergleich durch.
Wenn Sie ein Standardstammobjekt definieren, gibt eine Endbenutzeranfrage für ein Unterverzeichnis Ihrer Verteilung nicht das Standardstammobjekt zurück. Nehmen wir zum Beispiel an, index.html
es ist Ihr Standard-Root-Objekt, das eine Endbenutzeranfrage für das install
Verzeichnis in Ihrer Distribution CloudFront empfängt: CloudFront
https://d111111abcdef8.cloudfront.net/install/
CloudFront gibt das Standard-Stammobjekt nicht zurück, auch wenn eine Kopie von im install
Verzeichnis index.html
erscheint. Wenn Sie jedoch einen Pfad zu Ihrem Standard-Root-Objekt angegeben haben, gibt (install/index.html
) CloudFront das Standard-Root-Objekt für Endbenutzeranfragen für das install
Verzeichnis zurück
Wenn Sie Ihre Verteilung so konfigurieren, dass alle HTTP-Methoden, die CloudFront unterstützt, zulässig sind, gilt das Standardstammobjekt für alle Methoden. Wenn Ihr Standard-Root-Objekt beispielsweise index.php ist und Sie Ihre Anwendung schreiben, um eine POST
Anfrage an das Stammverzeichnis Ihrer Domain (https://example.com) zu senden, CloudFront sendet die Anfrage an https://example.com /index.php.
Das Verhalten von CloudFront Standard-Root-Objekten unterscheidet sich vom Verhalten von Amazon S3 S3-Indexdokumenten. Wenn Sie einen Amazon S3-Bucket als Website konfigurieren und das Indexdokument angeben, gibt Amazon S3 das Indexdokument auch dann zurück, wenn ein Benutzer ein Unterverzeichnis im Bucket anfragt. (Eine Kopie des Indexdokuments muss in allen Unterverzeichnissen angezeigt werden.) Weitere Informationen zum Konfigurieren von Amazon-S3-Buckets als Websites und zu Indexdokumenten finden Sie im Kapitel Hosting von Websites auf Amazon S3 im Benutzerhandbuch zu Amazon Simple Storage Service.
Wichtig
Denken Sie daran, dass ein Standard-Root-Objekt nur für Ihre CloudFront Distribution gilt. Sie müssen noch die Sicherheit für Ihren Ursprung verwalten. Wenn Sie beispielsweise einen Amazon S3 S3-Ursprung verwenden, müssen Sie Ihren Amazon S3-Bucket dennoch ACLs entsprechend einrichten, um die gewünschte Zugriffsebene für Ihren Bucket sicherzustellen.
Wie CloudFront funktioniert, wenn Sie kein Root-Objekt definieren
Wenn Sie kein Standardstammobjekt definieren, werden Anfragen für den Stamm Ihrer Verteilung an Ihren Ursprungs-Server weitergeleitet. Wenn Sie einen Amazon S3-Ursprung verwenden, kann Folgendes zurückgegeben werden:
-
Eine Liste der Inhalte Ihres Amazon S3 S3-Buckets — Unter einer der folgenden Bedingungen sind die Inhalte Ihres Ursprungs für jeden sichtbar, der auf Ihre Distribution CloudFront zugreift:
-
Ihr Bucket ist nicht ordnungsgemäß konfiguriert.
-
Die Amazon S3-Berechtigungen für den mit Ihrer Verteilung verknüpften Bucket und für die Objekte im Bucket gewähren allen Benutzern den Zugriff.
-
Ein Endbenutzer greift mit der Stamm-URL Ihres Ursprungs auf den Ursprung zu.
-
-
Eine Liste der privaten Inhalte Ihres Ursprungs — Wenn Sie Ihren Ursprung als private Distribution konfigurieren (nur Sie und Sie CloudFront haben Zugriff), ist der Inhalt des Amazon S3 S3-Buckets, der mit Ihrer Distribution verknüpft ist, für jeden sichtbar, der über die Anmeldeinformationen für den Zugriff auf Ihre Distribution verfügt CloudFront. In diesem Fall können Benutzer nicht über die Stamm-URL Ihres Ursprungs auf Ihre Inhalte zugreifen. Weitere Informationen zum Verteilen von privaten Inhalten finden Sie unter Stellen Sie private Inhalte mit signierten URLs und signierten Cookies bereit.
-
Error 403 Forbidden
— CloudFront gibt diesen Fehler zurück, wenn die Berechtigungen für den Amazon S3 S3-Bucket, der mit Ihrer Distribution verknüpft ist, oder die Berechtigungen für die Objekte in diesem Bucket allen den Zugriff CloudFront verweigern.