SSL-Umleitung auf der EC2-Instanz hinter dem SSL-terminierenden Load Balancer


11

Ich versuche, alle URLs in einer Webanwendung auf https umzuleiten.

Ich habe eine ec2-Instanz hinter einem elastischen Load Balancer. SSL wird auf dem Load Balancer beendet.

Alle Weiterleitungsversuche führen dazu, dass ich die vertraute Meldung "Diese Seite fordert auf eine Weise an, die niemals vollständig sein wird".

Der Load Balancer leitet 443 und 80 an Port 80 der Instanz weiter.

Dies ist, was ich in meinem .htaccess habe.

RewriteCond %{X-FORWARDED-PROTO} !=on  
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Hat jemand eine Idee, wie man das erreicht? Freundlicher Dank,

Antworten:


17

ungetestet .. aber ich versuche das

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#x-forwarded-proto


1
Ja! Ich danke dir sehr. Ich habe jetzt schon eine Weile damit zu kämpfen. Sehr geschätzt. Bitte stimmen Sie dieser Antwort zu, wenn Sie dies als Hilfe empfinden. Vielen Dank ...
Rix

Die Verbindung ist unterbrochen
Bill Rosmus

Lösung funktioniert immer noch. Einige Erklärungen finden Sie hier: docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/…
Tim

Hat für mich gearbeitet. Heute getestet
Ben Sinclair

0

Die Antwort von Mike ist größtenteils richtig, aber es ist wichtig darauf hinzuweisen, dass der Load Balancer seine Routine zur Überprüfung des Zustands noch ausführen muss, um sicherzustellen, dass die ec2-Instanz noch aktiv und in Ordnung ist. Dies kann mit einem zusätzlichen erfolgenRewriteCond

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{REQUEST_URI} !^/alive\.html$
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

... wo alive.htmlist der Name Ihrer Gesundheitsprüfungsdatei?

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.