Wie kann ich eine Apex Domain mithilfe von S3 und Route 53 zu ihrer Subdomain oder einer anderen Domain umleiten?

Lesedauer: 3 Minute
0

Ich möchte den Internet-Datenverkehr von meiner Root Domain (Apex Domain) (z. B. example.com) mithilfe von Amazon Simple Storage Service (Amazon S3) zu ihrer Subdomain (z. B. www.example.com) umleiten. Oder ich möchte den Internet-Datenverkehr von meiner Apex Domain mit Amazon S3 zu einer anderen Domain (z. B. example.net) umleiten.

Lösung

Voraussetzungen

  • Sie haben eine gehostete Zone für Ihre Apex Domain in Amazon Route 53.
  • Sie sind berechtigt, in der gehosteten Zone Datensätze für die Apex Domain zu erstellen.
  • Sie sind berechtigt, S3 Buckets zu erstellen.
  • Es existiert noch kein S3 Bucket mit exakt demselben Namen wie Ihre Apex Domain.
    Hinweis: Website-Endpunkte von Amazon S3 unterstützen HTTPS nicht. Die Umleitung funktioniert also nur für HTTP-Anfragen. Um sowohl HTTP- als auch HTTPS-Anfragen umzuleiten, verwenden Sie andere Methoden, z. B. das Umleiten von Anfragen mithilfe eines Application Load Balancers oder mithilfe von Amazon CloudFront.

Verwenden Sie das folgende Verfahren, um Ihre Domain mithilfe von Amazon S3 umzuleiten. Gehen Sie beispielsweise wie folgt vor, um Anfragen für die Apex Domain example.com an ihre Subdomain www.example.com umzuleiten:

  1. Erstellen Sie in der Amazon-S3-Konsole einen S3 Bucket mit dem genauen Namen Ihrer Apex Domain. Zum Beispiel example.com.
    Hinweis: S3-Bucket-Namen sind weltweit eindeutig. Wenn der von Ihnen benötigte Bucket-Name bereits verwendet wird, können Sie Amazon S3 nicht für die Umleitung verwenden. In diesem Fall sollten Sie andere Methoden in Betracht ziehen, z. B. die Konfiguration einer Umleitung mit einem Application Load Balancer oder die Verwendung von Amazon CloudFront mit einer Edge-Funktion.
  2. Wählen Sie den Bucket aus, den Sie erstellt haben, und klicken Sie auf Eigenschaften.
  3. Klicken Sie unter Hosten einer statischen Website auf die Option Bearbeiten.
  4. Wählen Sie Umleiten von Anforderungen für ein Objekt.
  5. Geben Sie als Hostname die Website ein, zu der Sie umleiten möchten. Zum Beispiel www.example.com.
  6. Wählen Sie für Protokoll das Protokoll für die umgeleiteten Anfragen aus (Kein, HTTP oder HTTPS).
    Hinweis: Wenn Sie kein Protokoll angeben, ist die Standardoption Keine.
  7. Wählen Sie Änderungen speichern.
  8. Wählen Sie in der Route-53-Konsole die gehostete Zone für Ihre Apex Domain aus. Zum Beispiel example.com.
  9. Erstellen Sie einen A-Alias-Datensatz für die Apex Domain in der ausgewählten gehosteten Zone mit den folgenden Werten:
    Datensatzname: Lassen Sie dieses Feld leer.
    Datensatztyp: Wählen Sie A – IPv4-Adresse.
    Datenverkehr umleiten an: Wählen Sie Alias zu S3-Website-Endpunkt.
    Region: Wählen Sie die Region aus, in der sich Ihr S3 Bucket befindet.
    S3-Endpunkt eingeben: Wählen Sie aus der Dropdownliste den S3 Bucket aus, den Sie erstellt haben. Zum Beispiel example.com. Vergewissern Sie sich, dass der Name des S3 Buckets genau mit dem Namen der gehosteten Zone für Ihre Apex Domain übereinstimmt.
    Routing-Richtlinie: Wählen Sie Einfaches Routing.
    Zustand des Ziels bewerten: Wählen Sie Nein und klicken Sie dann auf Einträge erstellen.

Öffnen Sie Ihre Apex Domain in einem Browser, um die Umleitung zu überprüfen. Alternativ können Sie den folgenden curl-Befehl verwenden, um den HTTP-Statuscode für die Antwort und den Wert des Location Headers in der Antwort zu überprüfen. Eine erfolgreiche Umleitung resultiert in HTTP-Statuscode 301 Moved Permanently und der Wert des Location Headers enthält eine URL auf der Domain, zu der Sie umleiten.

curl -i -s example.com | grep -E "HTTP|Location"
      HTTP/1.1 301 Moved Permanently
      Location: http://www.example.com/

Verwandte Informationen

Wie kann ich in Route 53 eine Domain auf eine andere umleiten?

Redirect requests for your bucket's website endpoint to another bucket or domain