跳至內容

如何使用 Application Load Balancer 將 HTTP 請求重新導向至 HTTPS?

2 分的閱讀內容
0

我想使用 Application Load Balancer 接聽程式規則,將 HTTP 請求重新導向至 HTTPS。

解決方法

**注意:**以下解決方法僅適用於 Application Load Balancer。如果您使用 Classic Load Balancer,請參閱如何在 ELB Classic Load Balancer 上將 HTTP 流量重新導向至 HTTPS?

確認負載平衡器的類型

請完成以下步驟:

  1. 開啟 Amazon Elastic Compute Cloud (Amazon EC2) console (Amazon Elastic Compute Cloud (Amazon EC2) 主控台)。
  2. 在導覽窗格的 Load Balancing (負載平衡) 下,選擇 Load Balancers (負載平衡器)。
  3. 找出您正在為其建立接聽程式規則的負載平衡器。在 Type (類型) 欄中,確認負載平衡器是否列為 application (應用程式)、classic (傳統)、network (網路) 或 gateway (閘道)。

**注意:**在完成以下步驟之前,您必須先建立目標群組

建立 HTTP 接聽程式規則,以將 HTTP 請求重新導向至 HTTPS

若要建立 HTTP 接聽程式規則並將請求重新導向至 HTTPS,請完成以下步驟:

**注意:**如果您已有 HTTP 接聽程式,請繼續進行下一組步驟。

  1. 開啟 Amazon EC2 console (Amazon EC2 主控台)。
  2. 在導覽窗格的 Load Balancing (負載平衡) 下,選擇 Load Balancers (負載平衡器)。
  3. 選取您的負載平衡器,然後選擇 Listeners (接聽程式)、Add listener (新增接聽程式)。
  4. Protocol: port (通訊協定:連接埠) 中,選擇 HTTP。您可以保留預設連接埠,或指定自訂連接埠。
  5. Default actions (預設動作) 中,選擇 Add action (新增動作)、redirect to (重新導向至),然後輸入 port 443 (連接埠 443)。如果您未使用預設連接埠,請選擇不同的連接埠。如需詳細資訊,請參閱規則動作類型
  6. 完成 Create an HTTPS listener (建立 HTTPS 接聽程式) 區段中的步驟。

如果您已經有 HTTP 接聽程式,請完成以下步驟,將 HTTP 請求重新導向至 HTTPS:

  1. 選取您的負載平衡器,然後選擇 HTTP Listener (HTTP 接聽程式)。
  2. Rules (規則) 底下,選擇 View/edit rules (檢視/編輯規則)。
  3. 選擇 Edit Rule (編輯規則),修改預設規則,將所有 HTTP 請求重新導向至 HTTPS。或者,您可以在現有規則之間插入一條規則。
  4. Then (然後) 底下,刪除現有條件,然後使用 Redirect to (重新導向至) 動作新增條件。
  5. HTTPS 中,輸入 443 port (443 連接埠)。
  6. 其餘選項請保留預設值。
    **注意:**若要變更網址或回傳碼,請修改其餘選項。
  7. 若要儲存,請選擇核取記號圖示。

建立 HTTPS 接聽程式

**注意:**如果您已經有 HTTPS 接聽程式,且其規則會將請求轉送至目標群組,請繼續前往 Verify that the security group of the Application Load Balancer allows traffic on 443 (確認 Application Load Balancer 的安全群組允許 443 流量)。

請完成以下步驟:

  1. 選擇 Listeners (接聽程式)、Add listener (新增接聽程式)。
  2. Protocol: port (通訊協定:連接埠) 中,選擇 HTTPS。請保留預設連接埠,或指定自訂連接埠。
  3. Default actions (預設動作) 中,選擇 Add action (新增動作)、Forward to (轉送至)。
  4. 選取裝載應用程式執行個體的目標群組。
  5. 請為您的組態選取預先定義的安全政策。
  6. 選擇 Default Security Certificate (預設安全憑證)。如果您尚未擁有憑證,請申請安全憑證
  7. 選擇 Save (儲存)。

確認 Application Load Balancer 的安全群組允許 443 流量

請完成以下步驟:

  1. 選擇負載平衡器的描述。
  2. Security (安全性) 底下,選擇 Security group ID (安全群組 ID)。
  3. 確認傳入規則。安全群組必須包含允許 HTTP 與 HTTPS 流量的傳入規則。

如果沒有任何傳入規則,請完成以下步驟以新增規則:

  1. 選擇 Actions (動作)、Edit Inbound Rules (編輯傳入規則)。
  2. 選擇 Add rule (新增規則)。
  3. Type (類型) 中,選擇 HTTPS
  4. Source (來源) 中,選擇 Custom (自訂) (0.0.0.0/0 或來源 CIDR)。
  5. 選擇 Save (儲存)。