AEM透過SSL/TLS終止的負載平衡器存取時,會將使用者重新導向回http
說明 description
環境
- Experience Manager
問題/症狀
透過SSL終止的負載平衡器(或SSL終止的CDN)存取AEM時,AEM會從https重新導向回http。
負載平衡器處的 SSL 終止表示 SSL 憑證已安裝在負載平衡器中。一般使用者透過https://存取網站,而Dispatcher/Web伺服器和AEM在後端以http://存取。
解析度 resolution
原因
不同的負載平衡器會傳送不同的標題,以通知後端系統 SSL 上游終止。 例如, Amazon ELB 使用標題「X-Forwarded-Proto:https」。
若要解決此問題:
I.更新Dispatcher /clientheaders設定
請參閱負載平衡器的文件,了解它設定了哪個標題來通知下游系統它終止了 SSL。為了簡單起見,在這些步驟中,我們假設正確的HTTP標題為「X-Forwarded-Proto:https"
- 登入到 Dispatcher 伺服器。
- 開啟Dispatcher伺服器陣列.any設定。
- 將標題新增至/clientheaders區段。
如果您使用的調度程式沒有負載平衡器,或您的負載平衡器或代理無法設定 X-Forwarded-Proto 標題,則可在web伺服器或dispatcher層級進行設定。 如果您使用 Apache HTTP 伺服器,然後更新 HTTPS VirtualHost 使用此指令:
1
RequestHeader
set
X-Forwarded-Proto
"https"
II. 更新標題設定:
- 前往
http://host:port/system/console/configMgr/org.apache.felix.http.sslfilter.SslFilter
,並以管理員身分登入。 - 設定 SSL 轉發報頭至 X-Forwarded-Proto。
- 設定 SSL 將值轉送至 https.
- 按一下儲存。
注意:
沒有用於告知後端使用哪種通訊協定的反向 Proxy 標題的標準。但是,這裡有一些是已知的:
- 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.
- 啟用設定 啟用 Proxy/負載平衡器連線,並將其儲存。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f