本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將 HTTP設定為HTTPS重新導向
本主題說明如何在最終使用者仍啟動應用程式時處理HTTP流量。您可以設定 HTTP HTTPS 重新導向 來執行此操作,有時稱為強制 HTTPS。
若要設定重新導向,請先設定環境來處理HTTPS流量。然後,您將HTTP流量重新導向至 HTTPS。這兩個步驟會在下列小節討論。
設定您的環境以處理HTTPS流量
取決於您環境的負載平衡組態,請執行以下其中一項作業:
-
負載平衡環境 – 設定負載平衡器以終止 HTTPS。
-
單一執行個體環境 – 設定您的應用程式以終止執行個體 的HTTPS連線。此組態取決於您環境的平台。
將HTTP流量重新導向至 HTTPS
若要HTTPS將HTTP流量重新導向至應用程式的 ,您可以在環境的執行個體上設定 Web 伺服器,也可以設定環境的 Application Load Balancer 。
設定執行個體 Web 伺服器
此方法適用於任何 Web 伺服器環境。設定 Amazon EC2執行個體上的 Web 伺服器,以使用HTTP重新導向回應狀態來回應HTTP流量。
此組態取決於您環境的平台。在 的https-redirect
如果您的環境使用 Elastic Load Balancing 運作狀態檢查 ,負載平衡器會預期運作狀態良好執行個體會以 HTTP 200 (OK) 回應來回應HTTP運作狀態檢查訊息。因此,您的 Web 伺服器不應將這些訊息重新導向至 HTTPS。在 https-redirect
設定負載平衡器
如果您有使用 Application Load Balancer 的負載平衡環境,則此方法可以運作。Application Load Balancer 可以在HTTP流量進入時傳送重新導向回應。在這種情況下,您不需要在環境的執行個體上設定重新導向。
我們在 上有兩個範例組態檔案 GitHub ,說明如何設定 Application Load Balancer 進行重新導向。
-
alb-http-to-https-redirection-full.config
組態檔案會在連接埠 443 上建立HTTPS接聽程式,並修改預設連接埠 80 接聽程式,以將傳入HTTP流量重新導向至 HTTPS。 -
alb-http-to-https-redirection.config
組態檔案預期會定義 443 接聽程式。若要定義它,您可以使用標準 Elastic Beanstalk 組態命名空間或 Elastic Beanstalk 主控台。然後其會負責修改連接埠 80 接聽程式以進行重新導向。