Amazon Simple Storage Service
Entwicklerhandbuch (API-Version 2006-03-01)

Beispiel: Einrichten einer statischen Website mit einer benutzerdefinierten Domäne

Angenommen, Sie wollen Ihre statische Website auf Amazon S3 hosten. Sie haben eine Domäne registriert (z. B. example.com) und wollen, dass Anfragen für http://www.example.com und http://example.com von Ihrem Amazon S3-Inhalt bedient werden. Unabhängig davon, ob Sie eine vorhandene statische Website haben, die Sie auf Amazon S3 hosten wollen, oder ob Sie ganz von vorn beginnen, können Sie anhand dieses Beispiels erfahren, wie Websites auf Amazon S3 gehostet werden.

Bevor Sie beginnen

Während Sie den Schritten in diesem Beispiel folgen, arbeiten Sie mit den folgenden Services:

Amazon Route 53 – Sie verwenden Route 53, um Domänen zu registrieren und definieren, wohin der Internetdatenverkehr für Ihre Domäne geleitet werden soll. Wir erläutern, wie Sie Route 53 Alias-Datensätze erstellen, die den Datenverkehr für Ihre Domäne (example.com) und Subdomäne (www.example.com) in einen Amazon S3-Bucket leiten, der eine HTML-Datei enthält.

Amazon S3 – Mit Amazon S3 erstellen Sie Buckets, laden eine Beispielseite für eine Website hoch, konfigurieren Berechtigungen, so dass jeder den Inhalt sehen kann, und konfigurieren dann die Buckets für das Website-Hosting.

Schritt 1: Registrieren einer Domäne

Wenn Sie noch keinen registrierten Domänennamen haben, wie z. B. example.com, registrieren Sie einen mit Route 53. Weitere Informationen finden Sie unter Registrierung einer neuen Domäne im Entwicklerhandbuch für Amazon Route 53. Wenn Sie über einen registrierten Domänennamen verfügen, erstellen und konfigurieren Sie in den nächsten Schritten Amazon S3-Buckets für das Website-Hosting und laden Ihren Website-Inhalt hoch.

Schritt 2: Erstellen und Konfigurieren von Buckets und Daten hochladen

Um Anfragen von der Root-Domäne wie example.com, als auch von der Subdomäne, wie www.example.com zu unterstützen, erstellen Sie zwei Buckets. Ein Bucket enthält den Inhalt. Den anderen Bucket konfigurieren Sie so, dass er Anfragen umleitet.

Schritt 2.1: Erstellen von zwei Buckets

Die Bucket-Namen müssen mit den Namen der Website übereinstimmen, die Sie hosten. Um beispielsweise Ihre example.com-Website auf Amazon S3 zu hosten, würden Sie einen Bucket namens example.com erstellen. Um eine Website unter www.example.com zu hosten, würden Sie einen Bucket namens www.example.com erstellen. In diesem Beispiel unterstützt Ihre Website Anfragen von example.com und www.example.com.

In diesem Schritt melden Sie sich bei der Amazon S3-Konsole mit den Anmeldeinformationen Ihres AWS-Kontos an und erstellen die beiden folgenden Buckets.

  • example.com

  • www.example.com

Anmerkung

Wie Domänen brauchen auch Subdomänen ihre eigenen S3-Buckets. Die Buckets müssen genau dieselben Namen haben wie die Unterdomänen. In diesem Beispiel erstellen wir die Subdomäne www.example.com, wir benötigen also einen S3-Bucket mit dem Namen www.example.com.

Ihre Buckets erstellen und Ihren Website-Inhalt zum Hosting hochladen

  1. Melden Sie sich bei der AWS Management Console an, und öffnen Sie die Amazon S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Erstellen Sie zwei Buckets, die dieselben Namen haben wie die Domäne und die Subdomäne. Zum Beispiel example.com und www.example.com.

    Schrittweise Anleitungen finden Sie unter Wie erstelle ich einen S3-Bucket? im Konsolenbenutzerhandbuch für Amazon Simple Storage Service.

  3. Laden Sie Ihre Website-Daten in den Bucket example.com hoch.

    Sie hosten Ihren Inhalt aus dem Root-Domänen-Bucket (example.com) und leiten Anfragen für www.example.com an den Root-Domänen-Bucket weiter. Sie können Inhalt in jedem Bucket speichern. In diesem Beispiel hosten Sie Inhalt im Bucket example.com. Bei dem Inhalt kann es sich um Textdateien, Familienfotos, Videos usw. handeln. Wenn Sie noch keine Website erstellt haben, brauchen Sie für dieses Beispiel nur eine Datei. Sie können eine beliebige Datei hochladen. Beispielsweise können Sie mit dem folgenden HTML eine Datei erstellen und in den Bucket hochladen. Der Dateiname der Startseite einer Website ist normalerweise index.html, Sie können aber jeden beliebigen Namen verwenden. In einem späteren Schritt geben Sie diesen Dateinamen als Indexdokumentnamen für Ihre Website an.

    <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>My Website Home Page</title> </head> <body> <h1>Welcome to my website</h1> <p>Now hosted on Amazon S3!</p> </body> </html>

    Schrittweise Anleitungen finden Sie unter Dateien und Ordner in einen S3-Bucket hochladen im Konsolenbenutzerhandbuch für Amazon Simple Storage Service.

  4. Um eine Website zu hosten, muss Ihr Bucket öffentlichen Lesezugriff haben. Es ist beabsichtigt, dass jeder Nutzer weltweit Lesezugriff auf diesen Bucket hat. Um öffentlichen Lesezugriff zu gewähren, hängen Sie die folgende Bucket-Richtlinie an den example.com-Bucket an, der den Namen Ihres Bucket durch example.com ersetzt. Schrittweise Anleitungen für das Hinzufügen einer Bucket-Richtlinie finden Sie unter Wie füge ich eine S3-Bucket-Richtlinie hinzu? im Konsolenbenutzerhandbuch für Amazon Simple Storage Service.

    { "Version":"2012-10-17", "Statement":[{ "Sid":"PublicReadGetObject", "Effect":"Allow", "Principal": "*", "Action":["s3:GetObject"], "Resource":["arn:aws:s3:::example.com/*"] }] }

    Jetzt haben Sie zwei Buckets, example.com und www.example.com, und Sie haben Ihren Website-Inhalt in den Bucket example.com hochgeladen. Im nächsten Schritt konfigurieren Sie www.example.com, um Anfragen an Ihren Bucket example.com weiterzuleiten. Durch die Weiterleitung von Anfragen ist eine einzige Kopie Ihres Website-Inhalts ausreichend. Besucher, die www in Ihre Browser eingeben, und solche, die nur die Root-Domäne angeben, werden zu demselben Website-Inhalt in Ihrem Bucket example.com weitergeleitet. 

Schritt 2.2: Konfigurieren von Buckets für das Website-Hosting

Wenn Sie einen Bucket für das Website-Hosting konfigurieren, können Sie über den von Amazon S3 zugewiesenen Bucket-Website-Endpunkt auf die Website zugreifen.

In diesem Schritt konfigurieren Sie beide Buckets für das Website-Hosting. Zuerst konfigurieren Sie example.com als Website, und dann konfigurieren Sie www.example.com, um alle Anfragen an den example.com-Bucket umzuleiten.

Konfigurieren Ihrer Buckets für das Website-Hosting

  1. Melden Sie sich bei der AWS Management Console an, und öffnen Sie die Amazon S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie in der Liste Bucket name (Bucket-Name) den Namen des Buckets aus, für den Sie ein Hosting statischer Websites aktivieren wollen.

  3. Wählen Sie Properties (Eigenschaften).

  4. Wählen Sie Static Website Hosting (Statisches Website-Hosting).

  5. Konfigurieren Sie den example.com-Bucket für das Website-Hosting. Geben Sie in das Feld Index Document (Indexdokument) den Namen ein, den Sie für Ihre Indexseite gewählt haben.

  6. Wählen Sie Save aus.

Schritt 2.3: Konfigurieren Ihrer Website-Umleitung

Nachdem Sie Ihren Bucket für ein Website-Hosting konfiguriert haben, konfigurieren Sie den www.example.com-Bucket so, dass alle Anfragen für www.example.com an example.com umgeleitet werden.

Anfragen von www.example.com an example.com umleiten

  1. Wählen Sie in der Amazon S3-Konsole in der Liste Buckets Ihren Bucket ( www.example.com in diesem Beispiel).

  2. Wählen Sie Properties (Eigenschaften).

  3. Wählen Sie Static Website Hosting (Statisches Website-Hosting).

  4. Wählen Sie Redirect requests (Anfragen umleiten). Geben Sie in das Feld Target bucket or domain (Ziel-Bucket oder -Domäne) example.com ein.

  5. Wählen Sie Save aus.

Schritt 2.4: Konfigurieren der Protokollierung für Website-Datenverkehr

Optional können Sie eine Protokollierung konfigurieren, um die Anzahl der Besucher der Website nachzuverfolgen. Dazu aktivieren Sie die Protokollierung für den Root-Domänen-Bucket. Weitere Informationen finden Sie unter (Optional) Konfigurieren der Protokollierung für Website-Datenverkehr.

Schritt 2.5: Testen Ihres Endpunkts und der Umleitung

Um die Website zu testen, geben Sie die URL des Endpunkts in Ihren Browser ein. Ihre Anfrage wird umgeleitet, und der Browser zeigt das Indexdokument für example.com an.

Im nächsten Schritt verwenden Sie Amazon Route 53, um den Kunden zu ermöglichen, alle URLs zu verwenden, um Ihre Site aufzurufen.

Schritt 3: Hinzufügen von Alias-Datensätzen für example.com und www.example.com

In diesem Schritt erstellen Sie die Alias-Einträge, die Sie der gehosteten Zone für Ihre Domänen-Maps hinzufügen, example.com und www.example.com zu den entsprechenden S3-Buckets. Anstatt IP-Adressen zu verwenden, verwenden die Alias-Datensätze die Amazon S3-Website-Endpunkte. Amazon Route 53 verwaltet eine Zuweisung zwischen den Alias-Datensätzen und den IP-Adressen, wo sich die Amazon S3-Buckets befinden.

So leiten Sie den Datenverkehr an Ihre Website

  1. Öffnen Sie die Route 53-Konsole unter der Adresse https://console.aws.amazon.com/route53/.

    Anmerkung

    Wenn Sie Amazon Route 53 nicht bereits verwenden, finden Sie die ersten Schritte hier. Nach dem Abschluss der Einrichtung können Sie mit den Anweisungen unten fortfahren.

  2. Wählen Sie in der Liste der gehosteten Zonen den Namen Ihrer Domäne aus.

  3. Wählen Sie Create Record Set (Datensatz erstellen).

    Anmerkung

    Jeder Datensatz enthält Informationen darüber, wie Sie den Datenverkehr für eine Domäne (example.com) oder Subdomäne (www.example.com) weiterleiten möchten. Datensätze werden in der gehosteten Zone für Ihre Domäne gespeichert.

  4. Geben Sie die folgenden Werte an:

    Name

    Für den ersten Datensatz, den Sie erstellen, akzeptieren Sie den Standardwert, bei dem es sich um den Namen Ihrer gehosteten Zone und Ihrer Domäne handelt. Dadurch wird der Internetdatenverkehr an den Bucket weitergeleitet, der denselben Namen hat wie Ihre Domäne.

    Wiederholen Sie diesen Schritt, um einen zweiten Datensatz für Ihre Subdomäne zu erstellen. Geben Sie für den zweiten Datensatz www ein. Dadurch wird der Internetdatenverkehr an den Bucket www.example.com weitergeleitet.

    Typ

    Wählen Sie A – IPv4 address (A – IPv4-Adresse) aus.

    Alias

    Wählen Sie Yes.

    Alias-Ziel

    Geben Sie den Namen Ihres Amazon S3-Bucket-Endpunktes ein, zum Beispiel example.com (s3-website-us-west-2).

    Anmerkung

    Sie geben denselben Wert für Alias Target (Alias-Ziel) für beide Datensätze an. Route 53 findet basierend auf dem Namen des Datensatzes heraus, an welchen Bucket der Datenverkehr geleitet werden soll.

    Routing-Richtlinie

    Übernehmen Sie den Standardwert Simple.

    Evaluate Target Health

    Übernehmen Sie den Standardwert No.

  5. Wählen Sie Create aus.

  6. Wiederholen Sie für www.example.com die Schritte 3 bis 5, um einen Datensatz zu erstellen.

Der folgende Screenshot zeigt den Alias-Datensatz für example.com zur Veranschaulichung. Sie müssen auch einen Alias-Datensatz für www.example.com erstellen.

Anmerkung

Nach dem Erstellen, Ändern und Löschen von Ressourcendatensätze dauert es ein wenig, bis dies an die Route 53 DNS-Server weitergeleitet werden. Änderungen werden im Allgemeinen in wenigen Minuten an alle Route 53-Namenserver verteilt. In seltenen Fällen kann die Verteilung bis zu 30 Minuten dauern.

Schritt 4: Testen

Um zu überprüfen, ob die Website in Ihrem Browser ordnungsgemäß funktioniert, probieren Sie die folgenden URLs aus:

  • http://example.com – Zeigt das Indexdokument im example.com-Bucket an.

  • http://www.example.com – Leitet Ihre Anfrage an http://example.com um.

In einigen Fällen müssen Sie möglicherweise den Cache Ihres Webbrowsers löschen, um das erwartete Verhalten zu sehen.