HTTP標題和傳統負載平衡器 - Elastic Load Balancing

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

HTTP標題和傳統負載平衡器

HTTP請求和HTTP響應使用標題字段發送有關HTTP消息的信息。標頭欄位是以冒號分隔的名稱值組,以歸位字元 (CR) 和換行 (LF) 分隔。標準的標HTTP頭欄位集在 RFC 2616「郵件標頭」中定義。還有非標準標HTTP頭可用(並自動添加),這些標題廣泛被應用程序使用。一些非標準標HTTP頭有一個X-Forwarded前綴。Classic Load Balancer 支援以下 X-Forwarded 標頭。

如需有關HTTP連線的詳細資訊,請參閱 E lastic Load Balancing 使用者指南中的要求路由

必要條件

X-Forwarded-For

X-Forwarded-For要求標頭會自動新增,並協助您在使用HTTP或HTTPS負載平衡器時識別用戶端的 IP 位址。由於負載平衡器攔截用戶端和伺服器之間的流量,您的伺服器存取日誌僅包含負載平衡器的 IP 地址。若要查看用戶端的 IP 地址,請使用 X-Forwarded-For 請求標頭。Elastic Load Balancing 會將用戶端的 IP 位址儲存在 X-Forwarded-For 請求標頭,並將標頭傳遞給您的伺服器。如果 X-Forwarded-For 請求標頭未包含在請求中,負載平衡器會以用戶端 IP 地址做為請求值建立請求標頭。否則,負載平衡器會將用戶端 IP 地址附加至現有標頭,並將標頭傳遞給您的伺服器。X-Forwarded-For 請求標頭可能包含以逗號分隔的多個 IP 地址。最左邊的地址是首先提出請求的用戶端 IP。後面則以鏈顯示所有接續的代理標識符。

X-Forwarded-For 請求標頭採用以下格式:

X-Forwarded-For: client-ip-address

下列是具有 IP 地址 203.0.113.7 之用戶端的範例 X-Forwarded-For 請求標頭。

X-Forwarded-For: 203.0.113.7

以下是IPv6地址為的客戶端的X-Forwarded-For請求標頭示例2001:DB8::21f:5bff:febf:ce22:8a2e

X-Forwarded-For: 2001:DB8::21f:5bff:febf:ce22:8a2e

X-Forwarded-Proto

X-Forwarded-Proto要求標頭可協助您識別用戶端用來連線到負載平衡器的通訊協定 (HTTP或HTTPS)。您的伺服器存取日誌僅包含在伺服器和負載平衡器之間使用的通訊協定,但不包含用戶端和負載平衡器之間使用的通訊協定相關資訊。若要判斷用戶端和負載平衡器之間使用的通訊協定,請使用 X-Forwarded-Proto 請求標頭。Elastic Load Balancing 會將用戶端和負載平衡器之間使用的通訊協定儲存在 X-Forwarded-Proto 請求標頭,並將標頭傳遞給您的伺服器。

您的應用程式或網站可以使用儲存在X-Forwarded-Proto要求標頭中的通訊協定來呈現重新導向至適當的回應URL。

X-Forwarded-Proto 請求標頭採用以下格式:

X-Forwarded-Proto: originatingProtocol

下列範例包含來自用戶端作為要求的要求的HTTPS要求標頭:X-Forwarded-Proto

X-Forwarded-Proto: https

X-Forwarded-Port

X-Forwarded-Port 請求標頭協助您識別用戶端用於連接到負載平衡器的目的地連接埠。