SSL/TLS를 통해 액세스하여 로드 밸런서가 종료되면 AEM이 다시 http로 리디렉션됩니다.

이 문서에서는 SSL 종료된 로드 밸런서(또는 SSL 종료된 CDN)를 통해 액세스하려고 할 때 https ​에서 http(으)로 리디렉션되는 Experience Manager 문제에 대해 설명합니다.

설명 description

환경

Experience Manager

문제/증상

SSL 종료된 로드 밸런서(또는 SSL 종료된 CDN)를 통해 AEM에 액세스하면 AEM이 https에서 http로 다시 리디렉션합니다.

로드 밸런서에서 SSL이 종료되면 SSL 인증서가 로드 밸런서에 설치됩니다. 최종 사용자는 https://을 통해 사이트에 액세스하고 백엔드에서 http://으로 Dispatcher/Web Server 및 AEM에 액세스합니다.

해결 방법 resolution

문제를 해결하려면 다음을 수행하십시오.

I.Update Dispatcher /clientheaders 구성

SSL이 종료되었음을 다운스트림 시스템에 알리기 위해 설정한 헤더를 확인하려면 로드 밸런서의 설명서를 참조하십시오. 간결성을 위해 다음 단계에서는 올바른 HTTP 헤더가 "X-Forwarded-Proto: https"이라고 가정합니다.

  1. Dispatcher 서버에 로그인합니다.
  2. Dispatcher farm .any 구성을 엽니다.
  3. /clientheaders 섹션에 헤더를 추가합니다.

로드 밸런서 없이 Dispatcher를 사용하거나 로드 밸런서 또는 프록시가 X-Forwarded-Proto 헤더를 설정하지 못하는 경우 웹 서버 또는 Dispatcher 수준에서 설정할 수 있습니다. Apache HTTP 서버를 사용하는 경우 다음 지시문을 사용하여 HTTPS VirtualHost ​을(를) 업데이트합니다.

1
RequestHeader  set X-Forwarded-Proto  "https"

II. 헤더 구성 업데이트:

  1. http://host:port/system/console/configMgr/org.apache.felix.http.sslfilter.SslFilter(으)로 이동한 다음 관리자로 로그인합니다.
  2. SSL 전달 헤더를 X-Forwarded-Proto로 설정합니다.
  3. SSL 전달 값을 https(으)로 설정합니다.
  4. 저장 을 클릭합니다.

참고:

사용된 프로토콜을 백엔드에 알려 주는 역방향 프록시 헤더에 대한 표준은 없습니다. 하지만 다음은 알려진 몇 가지 표준입니다.

  • Amazon ELB(Elastic Load Balancer)는 "X-Forwarded-Proto:https" 헤더를 사용합니다.
  • Amazon Cloudfront CDN은 "X-Cloudfront-Proto:https" 헤더를 사용합니다.

III. Jetty OSGi 구성 (AEM 6.3 이상 버전) 업데이트

AEM 6.3 이상 버전에는 추가 구성이 필요합니다.

  • http://aem-host:port/system/console/configMgr/org.apache.felix.http.에 로그인합니다.
  • 프록시/부하 분산 장치 연결 사용 설정을 사용하도록 설정하고 저장합니다.

원인

서로 다른 부하 분산 장치가 서로 다른 헤더를 전송하여 SSL ​이 업스트림에서 종료되었음을 백엔드 시스템에 알립니다. 예를 들어 Amazon ELB는 "X-Forwarded-Proto: https" 헤더를 사용합니다.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f