2016-05-05 5 views
5
  1. Ich habe eine Cloudfront-Verteilung mit Endpoint-Adresse eingerichtet.
  2. Ich möchte Anrufe in den /Latest Ordner in den Ordner /12.50 umleiten.
  3. Also habe ich eine Umleitungsregel in der S3-Konsole mit dem Routing-Regeln Markup definiert.

routing ruleCloudfront leitet zum S3-Endpunkt um

Ergebnis: die Umleitung tritt in, sondern verschiebt den Benutzer von der Cloudfront URL zum Endpunkt-URL.

z.B. Ein Benutzer, der bei <mysite>.cloudfront.net/Latest kommt, wird zu <bucket>.hpe-alm.s3-website-us-west-2.amazonaws.com/12.50 umgeleitet.

Frage: Gibt es eine Möglichkeit für die Umleitung, den Benutzer auf der Cloudfront-Domäne zu halten?

Antwort

1

Anstatt die Umleitung in Amazon S3 durchzuführen, können Sie den Ursprungspfad in CloudFront ändern.

  • einen Ursprung mit einem Pfad Herkunft definieren von /12.50
  • bearbeiten das Verhalten der Cloudfront Verteilung, wenn Sie es auf eine andere Version verweisen soll ist

Hier einige Beispiele:

Vollständige Umleitung

In diesem Fall habe ich die Wurzel (dxxx.cloudfront.net) zu einem Unterverzeichnis erneut darauf:

  • Ich habe ein Amazon S3 Eimer und angelegt, um einen Eimer Politik alles öffentlich lesbar
  • zu machen ich habe zwei Ordner im Eimer: v1 und v2
  • ich zwei verschiedene Bilder zu jedem Ordner hochgeladen, aber mit dem gleichen Dateinamen
  • I erstellt ein Amazon Cloudfront Verteilung zwei Origins und zeigte auf v1 und v2 jeweils
  • ich die Distribution Standardverhalten gesetzt zum v1 Herkunft
  • Sobald die Verteilung war bereit, ich dxxx.cloudfront.net/picture.jpg zugegriffen zu zeigen. Es gab das Bild von v1 zurück.
  • Ich änderte dann das Verhalten auf den Ursprung v2 zeigen. Sobald die Verteilung fertig war, habe ich auf dieselbe URL zugegriffen und das Bild von v2 zurückgegeben.

Redirect von einem Unterverzeichnis

In diesem Beispiel habe ich dxxx.cloudfront.net/Latest zu einem anderen Unterverzeichnis erneut hingewiesen.

Der wichtige Unterschied besteht darin, dass das Zielverzeichnis ein /Latest Unterverzeichnis enthalten muss, da es tatsächlich zu dxxx.cloudfront.net/<version>/Latest zeigen wird, wobei nur der Teil <version> substituiert ist.

  • auf das obige Beispiel, habe ich einen /Latest Ordner innerhalb der v1 und v2 Verzeichnisse und setzen Bilder in jedem von ihnen
  • ich ein zusätzliches Verhalten mit einem Muster Pfad hinzugefügt von /Latest/* auf die Zeige v1 Herkunft
  • Sobald die Verteilung fertig war, habe ich dxxx.cloudfront.net/Latest/picture.jpg zugegriffen. Es gab das Bild von /Latest/v1 zurück.
  • Ich modifizierte dann das /Latest Verhalten, um auf den v2 Ursprung zu zeigen. Sobald die Distribution fertig war, habe ich auf dieselbe URL zugegriffen und das Bild von /Latest/v2 zurückgegeben.
+0

Danke. Es ist mir nicht klar, welche Einstellung in Behavior es mir erlaubt, Anfragen an '/ Latest' zu' 12.50' umzuleiten. ** Pfadmuster ** leitet erneut zum Bucket um. –

+0

Ich habe etwas experimentiert und einige Beispiele hinzugefügt. –