Amazon S3 Redirect und Cloudfront
Ich versuche, die Einrichtung von 301-Weiterleitungen auf S3 mit Objekten, die hier referenziert http://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html. Ich habe einige Probleme und kann nicht scheinen, um herauszufinden, was ich falsch mache.
Was ich bekommen ist eine leere Seite (0 byte Datei), als wenn die 'Website Umleiten Speicherort Metadaten-Wert ist nicht gesetzt.
Was mache ich falsch?
Auch, funktioniert das mit AWS CloudFront?
Mein S3 Console-Setup
Paar Dinge zu beachten:
Ich habe dieses setup für das hosting einer statischen Website.
Ich bin über ssl/https mit meinen eigenen cert hochgeladen und setzen auf die cloudfront-Verteilung.
Alle Seiten scheinen zu funktionieren, außer das umleiten von Objekten.
Ich habe versucht, einrichten von routing-Regeln, aber Sie schien nicht zu arbeiten Cloudfront.
Ich versuche, auf die Umleitungen sowohl durch die cloudfront-url und die s3-url (https://s3.amazonaws.com/{bucket}/users/sign_in)
InformationsquelleAutor der Frage Matt Smith | 2014-03-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Web-site-Funktionalität wie im S3, wie Weiterleitungen, html-Fehlermeldungen und index-Dokumente, die Sie nicht verwenden können, den REST-Endpunkt (
${bucket_name}.s3.amazonaws.com
oder${bucket_name}.s3.${region}.amazonaws.com
), da diese Funktionen nur von der web-site-Endpunkte (${bucket_name}.s3-website.${region}.amazonaws.com
).http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteEndpoints.html
Um das Verhalten verfügbar in Cloudfront, müssen Sie es konfigurieren Cloudfront verwenden diesen Endpunkt als gut, der REST nicht angeboten wird per autocomplete in der Konsole.
Beachten Sie, dass die web-Endpunkten nicht unterstützt HTTPS, aber Sie können konfigurieren, Cloudfront zu Holen, aus dem Eimer mit HTTP, obwohl der client die Verbindung ist HTTPS.
Hilfreicher Tipp: bei der Fehlersuche und dem testen der änderungen mit CloudFront-Nutzer sind oft verwirrt durch die scheinbare "Latenz" zwischen, wenn Sie änderungen vornehmen, und wenn CloudFront beginnt die Ausstellung der neuen Verhaltensweisen. Im Falle von Fehler-Seiten, CloudFront bietet eine Standard-5-Minuten - Fehler Caching-Minimum-TTL die es verhindert re-senden von Anfragen für Fehler-Seiten, die Herkunft, und dies ist eine separate timer aus dem minimal/Standard/maximal TTL-set in den Cache-Verhalten. Besonders, wenn Sie testen, können Sie Sie deaktivieren möchten diesen Timer und Kraft, eine Wiederholung mit jede nachfolgende Anforderung von Seiten, die zurückgegeben Fehler, über die Schritte, die ich in der Antwort auf eine Frage offensichtlich Amazon CloudFront Latenz.
InformationsquelleAutor der Antwort Michael - sqlbot
Ich hatte das gleiche problem mit Umleitungen Versagen und null-Länge-Dateien immer heruntergeladen, war aber nicht mit Cloudfront.
Die Ursache in meinem Fall war mein DNS-CNAME-record wies auf die REST-Endpunkt (static.righto.com.s3-us-west-2.amazonaws.com) statt des website-Endpunkt (statisch.righto.com.s3-website-us-west-2.amazonaws.com). Aktualisieren Sie den CNAME-Eintrag behoben, die meine leitet.
Ein weiteres symptom dieses Problems fehlten die Seiten angezeigt, die ein XML-Fehler-Seite lieber als eine HTML-Fehler-Seite.
Dieses Dokument erklärt den Unterschied zwischen website-Endpunkte und die REST-Endpunkte.
InformationsquelleAutor der Antwort Ken Shirriff