全部產品
Search
文件中心

Server Load Balancer:添加HTTP監聽

更新時間:Aug 15, 2025

監聽是用於檢查串連請求的過程。如果您的應用需要對資料內容進行識別,比如Web應用和手機小遊戲,可以添加一個HTTP監聽來轉寄來自HTTP協議的請求。

前提條件

操作指引

本文為您提供以下兩種方式建立HTTP監聽,您可以根據需求選擇其中一種方式建立HTTP監聽。

  • 建立HTTP監聽:您可以根據業務定製進階配置等功能。

  • 快速建立HTTP監聽:您可以快速建立監聽,只需配置監聽協議、監聽連接埠和轉寄的後端伺服器組。

建立HTTP監聽

  1. 登入應用型負載平衡ALB控制台

  2. 在頂部功能表列,選擇ALB執行個體的所屬地區。

  3. 選擇以下一種方法,開啟監聽設定精靈。

    • 執行個體頁面,在目標執行個體操作列單擊建立監聽

    • 執行個體頁面,單擊目標執行個體ID。在監聽頁簽,單擊建立監聽

  4. 配置監聽設定精靈,完成以下配置,然後單擊下一步

    監聽配置

    說明

    選擇監聽協議

    選擇監聽的協議類型。

    本樣本選擇HTTP

    監聽連接埠

    輸入用來接收請求並向後端伺服器進行請求轉寄的監聽連接埠,連接埠範圍為1~65535。 通常HTTP協議使用80連接埠,HTTPS協議使用443連接埠。

    說明

    同一個ALB執行個體內,相同協議的監聽連接埠不能重複,且HTTP和HTTPS監聽連接埠互不重複。

    本樣本輸入80

    監聽名稱

    輸入監聽名稱。

    標籤

    設定標籤鍵標籤值

    設定標籤後,您可以在監聽頁簽使用標籤篩選監聽。

    高級配置

    單擊修改展開進階配置。

    串連空閑逾時時間

    指定串連空閑逾時時間,取值範圍為1~600秒,預設為15秒。如需提升配額,請前往配額中心申請。

    在逾時時間內一直沒有訪問請求,負載平衡會暫時中斷當前串連,直到下一次請求來臨時重建立立新的串連。

    說明

    該功能對使用HTTP 2.0的請求暫不生效。

    串連請求逾時時間

    指定請求逾時時間,取值範圍為1~600秒,預設為60秒。如需提升配額,請前往配額中心申請。

    在逾時時間內後端伺服器一直沒有響應,負載平衡將放棄等待,給用戶端返回HTTP 504錯誤碼。

    數據壓縮

    開啟該配置會對特定檔案類型進行壓縮,關閉該配置則不會對任何檔案類型進行壓縮。

    • 目前Brotli支援壓縮所有類型。

    • Gzip支援壓縮的類型包括:text/xmltext/plaintext/cssapplication/javascriptapplication/x-javascriptapplication/rss+xmlapplication/atom+xmlapplication/xmlapplication/json

    說明
    • 僅當響應內容的 Content-Length 值超過1024位元組時,才會觸發資料壓縮。

    • 當用戶端請求同時支援Brotli和Gzip壓縮演算法時,ALB會優先選擇更高效的壓縮演算法Brotli。

    • 當用戶端僅支援Gzip壓縮演算法時,若檔案類型為Gzip不支援的類型,則ALB不會進行壓縮。

    尋找真實客戶端源IP

    允許ALB從X-Forwarded-For頭欄位中尋找真實用戶端IP開關。開啟後,您需要設定可信IP列表。

    • 可信IP列表設定為0.0.0.0/0:表示擷取X-Forwarded-For請求標題中最左邊的地址,即真實用戶端源IP。

    • 可信IP列表設定為proxy1 IP;proxy2 IP;..:表示從右往左擷取第一個不在這個列表裡面的值,並將其作為真實用戶端源IP。

    使用情境說明:

    當X-Forwarded-For請求標題中包含多個IP地址時,例如X-Forwarded-For: <client-ip-address>, <proxy1>, <proxy2>, …,最左邊的地址是真實用戶端IP,如果您需要使用ALB轉寄規則中基於SourceIp匹配和QPS(基於用戶端源IP限速)功能,您需要開啟尋找真實用戶端源IP開關,以便ALB從X-Forwarded-For頭欄位中尋找真實用戶端源IP。更多資訊,請參見添加轉寄規則

    說明

    僅標準版、WAF增強版ALB執行個體支援開啟尋找真實用戶端源IP,基礎版ALB執行個體不支援。

    附加HTTP頭欄位

    選擇您要添加的自訂HTTP頭欄位:

    • 選擇是否開啟X-Forwarded-For頭欄位來擷取來訪者用戶端IP地址。

      • 開啟X-Forwarded-For頭欄位:

        ALB將請求發送至後端伺服器之前附加、刪除請求中的X-Forwarded-For頭欄位。

        • 附加(預設)

          預設情況下,ALB會將用戶端IP地址儲存到X-Forwarded-For頭欄位中,並將該頭欄位資訊發送至後端伺服器。如果原始請求中未包含X-Forwarded-For頭欄位,ALB會建立以用戶端IP地址為請求值的X-Forwarded-For頭欄位。否則,ALB會將用戶端IP地址附加到現有X-Forwarded-For頭欄位中,然後將頭欄位發送至後端伺服器。X-Forwarded-For 要求標頭欄位可能包含多個以逗號分隔的 IP 位址。

        • 刪除

          ALB將請求發送至後端伺服器之前,會刪除請求中的X-Forwarded-For頭欄位。

      • 關閉X-Forwarded-For頭欄位:

        ALB將請求發送至後端伺服器之前,不會對請求中的X-Forwarded-For頭欄位進行任何修改。

      欄位格式:

      X-Forwarded-For: <client-ip-address>, <proxy1>, <proxy2>, …

      點擊查看樣本:當您選擇開啟附加、刪除或關閉時,後端伺服器收到的X-Forwarded-For頭欄位

      本樣本中,最後一跳為127.0.0.1

      請求描述

      請求樣本

      開啟X-Forwarded-For頭欄位

      關閉X-Forwarded-For頭欄位

      附加

      刪除

      發送請求時沒有X-Forwarded-For頭欄位

      GET /index.html HTTP/1.1

      Host: example.com

      X-Forwarded-For: 127.0.0.1

      發送請求時包含一個X-Forwarded-For頭欄位和一個用戶端IP地址

      GET /index.html HTTP/1.1

      Host: example.com

      X-Forwarded-For: 127.0.0.2

      X-Forwarded-For: 127.0.0.2, 127.0.0.1

      X-Forwarded-For: 127.0.0.2

      發送請求時包含一個X-Forwarded-For頭欄位和多個用戶端IP地址

      GET /index.html HTTP/1.1

      Host: example.com

      X-Forwarded-For: 127.0.0.2, 127.0.0.3

      X-Forwarded-For: 127.0.0.2, 127.0.0.3, 127.0.0.1

      X-Forwarded-For: 127.0.0.2, 127.0.0.3

      ALB如何擷取用戶端真實IP教程,請參見後端伺服器通過ALB擷取用戶端真實IP

    • 添加SLB-ID頭欄位擷取Server Load Balancer執行個體的ID。

    • 添加X-Forwarded-Proto頭欄位擷取執行個體的監聽協議。

    • 添加X-Forwarded-Port頭欄位擷取執行個體的監聽連接埠。

    • 添加X-Forwarded-Host頭欄位擷取訪問Server Load Balancer執行個體用戶端的網域名稱。

    • 添加X-Forwarded-Client-srcport頭欄位擷取訪問Server Load Balancer執行個體用戶端的連接埠。

    說明

    建議您的後端伺服器在擷取HTTP頭欄位時,遵循HTTP協議規範,不區分HTTP頭欄位索引值的大小寫。

    • ALB向後端伺服器傳遞X-Forwarded-For附加頭欄位的首字母始終保持大寫。

    • 針對其他附加HTTP頭欄位,如果用戶端請求中攜帶某個頭欄位,ALB會按照用戶端請求中頭欄位格式向後端伺服器傳遞。否則,ALB會根據上表所示附加頭欄位的欄位名格式向後端伺服器傳遞。

  5. 選擇伺服器組設定精靈,選擇伺服器組,查看後端伺服器資訊,然後單擊下一步

  6. 設定審核設定精靈,確認配置資訊,然後單擊提交

快速建立HTTP監聽

選擇快速建立監聽,您只需配置監聽協議、監聽連接埠和轉寄的後端伺服器組。

  1. 登入應用型負載平衡ALB控制台

  2. 在頂部功能表列,選擇ALB執行個體的所屬地區。

  3. 執行個體頁面,找到目標執行個體,單擊執行個體ID。

  4. 單擊監聽頁簽,在監聽頁簽單擊快速建立監聽

  5. 快速建立監聽對話方塊中,完成以下參數的配置,然後單擊確定

    監聽配置

    說明

    選擇監聽協議

    選擇一種負載平衡協議。本文選擇HTTP

    監聽連接埠

    設定前端協議連接埠,即用來接收請求並向後端伺服器進行請求轉寄的監聽連接埠。

    您可以直接單擊常用監聽連接埠快捷填寫,或者輸入連接埠。監聽連接埠範圍:1~65535。

    選擇資源群組

    選擇伺服器組歸屬的資源群組。

    轉寄的後端伺服器組

    選擇後端服務群組類型及後端伺服器。

相關文檔

  • ALB提供了豐富的進階轉寄規則,具體操作請參見配置監聽轉寄規則

  • 如果遇到返回異常碼問題,您可參考ALB狀態代碼說明

  • 如果遇到健全狀態檢查異常問題,您可參考ALB健全狀態檢查異常排查方法

  • 更多情境教程,請參見:

    • 使用ALB將HTTP訪問重新導向至HTTPS:通過ALB監聽轉寄規則,可將HTTP協議的請求重新導向到HTTPS,從而確保資料轉送加密,防止中間人攻擊和資料泄露,協助您輕鬆構建符合現代安全標準的網路架構。

    • 使用ALB流量鏡像功能實現模擬壓測:通過ALB提供的流量鏡像功能可以實現線上流量模擬,將線上流量鏡像到測試環境的後端伺服器,同時ALB自動丟棄鏡像後端伺服器返回的響應資料,保證鏡像後端伺服器的測試業務不會影響到線上業務。

    • 使用ALB實現灰階發布:通過配置基於特定條件或不同伺服器組流量權重的監聽轉寄規則,將部分請求轉寄至新版本應用,逐步驗證新版本穩定性,實現灰階發布。