AEM leitet den Benutzer zurück zu http, wenn er über SSL/TLS aufgerufen wird und den Lastenausgleich beendet

Beschreibung

Umgebung

  • Experience Manager

Probleme/Symptome
Beim Zugriff auf AEM über einen SSL beendeten Lastenausgleich (oder SSL-beendeten CDN) leitet AEM von HTTPS zurück zu HTTP.

SSL-Beendigung am Load-Balancer bedeutet, dass die SSL-Zertifikate im Load Balancer installiert sind. Der Endbenutzer greift über https:// auf die Site zu und der Dispatcher/Webserver und AEM werden über das Backend mit http:// aufgerufen.

Lösung

Ursache

Verschiedene Lastverteiler senden verschiedene Header, um die Backend-Systeme darauf hinzuweisen, dass SSL wird vorgelagert beendet. Beispiel: Amazon ELB verwendet den Header „X-Forwarded-Proto: https“.

​ ​ ​ ​ ​

So beheben Sie das Problem:

I. Aktualisieren der Dispatcher-/clientheaders-Konfiguration

Lesen Sie in der Dokumentation Ihres Load-Balancers nach, welchen Header er setzt, um nachgelagerten Systemen mitzuteilen, dass er SSL beendet hat. Zur Vereinfachung gehen wir bei diesen Schritten davon aus, dass der richtige HTTP-Header "X-Forwarded-Proto: https"

  1. Melden Sie sich beim Dispatcher-Server an.
  2. Öffnen Sie die Konfiguration der Dispatcher-Farm .any .
  3. Fügen Sie die Kopfzeile zum Abschnitt /clientheaders hinzu.

Wenn Sie Dispatcher ohne Lastenausgleich verwenden oder wenn Ihr Lastenausgleich oder Proxy die X-Forwarded-Proto -Kopfzeile erstellen, können Sie sie auf der Webserver- oder Dispatcher-Ebene festlegen. Wenn Sie Apache HTTP Server und aktualisieren Sie dann Ihre HTTPS VirtualHost mit dieser Richtlinie:

1 RequestHeader  set X-Forwarded-Proto  "https"

II. Aktualisieren Sie die Header-Konfigurationen:

  1. Navigieren Sie zu http://host:port/system/console/configMgr/org.apache.felix.http.sslfilter.SslFilterund melden Sie sich als Administrator an.
  2. Satz SSL Weiterleitungs-Header X-Forwarded-Proto.
  3. Satz SSL Weiterleitungswert https.
  4. Klicken Sie auf Speichern.

Hinweis:

Es gibt keinen Standard für Reverse-Proxy-Header, die dem Back-End mitteilen, welches Protokoll verwendet wird. Hier sind jedoch einige bekannte:

  • Amazon ELB (Elastic Load Balancer) verwendet den "X-Forwarded-Proto: Kopfzeile "https".
  • Amazon Cloudfront CDN verwendet "X-Cloudfront-proto: Kopfzeile "https".

III. Aktualisieren der Jetty-OSGi-Konfiguration (AEM 6.3 und neuere Versionen)

Für AEM 6.3 und neuere Versionen ist eine zusätzliche Konfiguration erforderlich:

  • Anmelden bei http://aem-host:port/system/console/configMgr/org.apache.felix.http.
  • Aktivieren Sie die Einstellung Proxy/Load Balancer-Verbindung aktivieren und speichern Sie sie.

Auf dieser Seite