So leiten Sie Ihre Website in HTTPS hinter einem AWS -Ladungsbalancer um

So leiten Sie Ihre Website in HTTPS hinter einem AWS -Ladungsbalancer um

In AWS EC2 -Instanzen hört Ihr Webserver auf Port 80 an, um HTTP -Verbindungen zu akzeptieren. Anschließend haben Sie den Amazon Elastic Load Balancer (ELB) so konfiguriert, dass Sie auf HTTP- und HTTPS -Verkehr anhören und alle Anforderungen nur an den Backend -Server auf Port 80 weiterleiten. Der Amazon Elastic Last Balancer (ELB) unterstützt die X-Forwarded-Proto Kopfzeilenwert, der das Protokoll der Anwendung enthält.

Der X-Forwarded-Proto Der Header -Wert der HTTP -Anforderung wird in diesem Tutorial verwendet, und die Umschreibegeln werden angewendet, wenn das Client -Protokoll keine HTTPS ist.

Hier erfahren Sie.

1. Apache

Hinzufügen einer HTTPS -Umleitungregel zu Ihrem Apache VirtualHost oder Hinzufügen .Die HTAccess -Datei ist eine einfache Möglichkeit, den gesamten Datenverkehr auf Ihre Website um HTTPS umzuleiten. Sie können dies tun, indem Sie den folgenden Code zu Ihrem virtuellenHost hinzufügen oder .HTaccess -Datei:

RewriteEngine on Rewritecond %http: x-forwarded-proto !https rewriterule ^.*$ https: //%server_name%request_uri
123 RewriteEngine on Rewritecond %http: x-forwarded-proto !https rewriterule ^.*$ https: //%server_name%request_uri

Der obige Code ist ein Beispiel für eine HTTPS -Umleitungregel, die zu einer hinzugefügt werden kann .HTaccess -Datei. Wenn diese Regel hinzugefügt wird, überprüft sie, ob der X-forwarded-Proto-Header nicht auf HTTPS gesetzt ist. Wenn dies nicht der Fall ist, wird der gesamte Datenverkehr so ​​weitergeleitet, dass HTTPS mit den Variablen %Server_Name und %Request_uri verwendet wird. Dies ist nützlich in Szenarien, in denen sich die Website hinter einem Lastausgleich oder einem Proxy befindet, und der X-Forwarded-Proto-Header wird verwendet, um Informationen über das Protokoll des Clients an den Server zu übergeben. Indem Sie diesen Code zu Ihrem Hinzufügen hinzufügen .Die HTAccess -Datei wird der gesamte Datenverkehr auf Ihre Website für die Verwendung von HTTPS umgeleitet, um sicherzustellen, dass Ihre Website sicher und verschlüsselt ist.

2. Nginx

Bearbeiten Sie den Nginx HTTP -Serverblock für Ihre Domäne, um die Umleitung der Kraft zu konfigurieren. Fügen Sie den folgenden Inhalt unter dem Standortblock hinzu, um den gesamten HTTP -Datenverkehr zu HTTPS umzuleiten.

Standort / if ($ http_x_forwarded_proto != 'https') rewrite ^ https: // $ host $ request_uri? dauerhaft;
1234 Standort / if ($ http_x_forwarded_proto != 'https') rewrite ^ https: // $ host $ request_uri? dauerhaft;

Die obige Nginx -Konfiguration ist ein Beispiel für eine HTTPS -Umleitungregel, die zu einem Standortblock in der Nginx -Konfigurationsdatei hinzugefügt werden kann. Wenn diese Regel hinzugefügt wird, überprüft sie, ob der X-Forwarded-Proto-Header nicht auf HTTPS gesetzt ist. Wenn dies nicht der Fall ist, wird die Umschreibungsanweisung verwendet, um den gesamten Datenverkehr um HTTPS mithilfe der Variablen $ Host und $ request_uri zu verwendeten. Mit der Anweisung wird die Variable http_x_forwarded_proto überprüft, die auf https eingestellt ist, wenn die Verbindung sicher ist. Durch Hinzufügen dieses Codes zu Ihrer Nginx -Konfigurationsdatei wird der gesamte Datenverkehr auf Ihre Website für die Verwendung von HTTPS umgeleitet, um sicherzustellen, dass Ihre Website sicher und verschlüsselt ist.

3. Iis

Die Windows -Server mit IIS Web Server bearbeiten oder erstellen die Netz.Konfiguration Datei und fügen Sie den folgenden Code im Abschnitt hinzu:

1234567891011

Abschluss

Wenn Sie diese vier Schritte befolgen, können Sie Ihre Website leicht in HTTPS hinter einem AWS -Last -Balancer umleiten. Mit einem SSL/TLS -Zertifikat, einer Konfiguration der Balancer, der Erstellung von Regelregel und dem DNS -Datensatz -Update können Sie sicherstellen, dass der gesamte Datenverkehr auf Ihre Website verschlüsselt und sicher ist.