Unterstützung der HTTPS-URL-Umleitung mit einer einzelnen CloudFront-Distribution

Ich habe eine Domainformulagrid.com.

Ich verwende AWS S3, um es als statische Website zu hosten. Mein Problem war, dass ich die www-Subdomain wie folgt auf die Bare-Domain umleiten wollte:

https://www.formulagrid.com -> https://formulagrid.comhttp://www.formulagrid.com -> https://formulagrid.com

Amazon bietet eine URL-Umleitung von S3-Bucket zu S3-Bucket, wenn beide für statisches Website-Hosting eingerichtet sind.

lso musste ich zwei Eimer aufstellen:

formulagrid.com - aktuelle Websitewww.formulagrid.com - existiert nur, um auf die eigentliche Website umzuleiten

Dies funktioniert einwandfrei, wenn Sie nur über HTTP arbeiten, S3 jedoch HTTPS absolut nicht unterstützt.

Mit HTTPS können Sie eine Verbindung zu einer statischen S3-Website herstellen, indem Sie eine CloudFront-Distribution vor einem S3-Bucket einrichten. CloudFront bietet zwar HTTPS, ist jedoch hauptsächlich als CDN verfügbar.

Initial hatte ich ein einzelnes CloudFront-Distributionssetup vor dem S3-Bucket, in dem sich die eigentliche Site befand. Alles schien betriebsbereit zu sein: Die Site wurde über das CDN verteilt, es gab HTTPS und HTTP, das zu HTTPS umgeleitet wurde.

Es gab eine Ausnahme.

https://www.formulagrid.com war eine komplett kaputte Seite

Nach einiger Zeit bemerkte ich, dass der Versuch, die Fehlerquelle zu finden, darauf zurückzuführen ist, dass das CDN nicht durchlaufen wurde und der Versuch, über HTTPS auf S3 zuzugreifen, nicht funktioniert.

Schließlich musste ich eine weitere Distribution bereitstellen, um vor dem @ zu sitzewww S3-Bucket also über HTTPS erreichbar. Hier kommen meine Bedenken ins Spiel, da CloudFront, wie ich bereits erwähnte, hauptsächlich die Aufgabe hat, ein CDN zu sein.

Es macht für mich keinen Sinn, ein CDN vor einer URL zu haben, die einfach zu einer anderen umleitet. Außerdem wird die Frage aufgeworfen, ob ich für jede Anfrage, die auf das @ trifft, eine doppelte Gebühr erhalten würdwww Subdomain, da die andere CloudFront-Distribution nach der Umleitung betroffen war.

Das ist frustrierend, weil ich versuche, mit Lambda eine "serverlose" Architektur zu erstellen, und eine EC2-Instanz nur zum Umschreiben von URLs bereitstellen möchte, es sei denn, dies ist mein letzter Ausweg.

Die Lösung wäre trivial, wenn Amazon eine Form der URL-Umschreibung anbieten würde oder wenn CloudFront selbst eine Umleitung durchführen würde, aber meines Wissens nach keine von diesen vorhanden ist (lassen Sie es mich wissen, wenn dies der Fall ist).

Ich bin neu bei AWS und hoffe, dass mich jemand mit mehr Erfahrung in die richtige Richtung weisen kann.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage