Azure Front Door 中 HTTP 標頭的通訊協議支援

本文概述 Front Door 支援的通訊協定,以及呼叫路徑的一部分(請參閱影像)。 在下列各節中,您會找到 Front Door 支援的 HTTP 標頭相關信息。

此圖顯示向轉送至後端的 Azure Front Door 提出要求的用戶端。回應會從 Azure Front Door 傳送至用戶端。

重要

Azure Front Door 不會認證此處未記載的任何 HTTP 標頭。

從用戶端到 Azure Front Door

Azure Front Door 會接受傳入要求的大部分標頭,而不需修改它們。 如果傳送,某些保留標頭會從傳入要求中移除,包括具有前置詞的 X-FD-* 標頭。

偵錯要求標頭 X-Azure-DebugInfo提供 Front Door 的額外偵錯資訊。 您必須將要求標頭從用戶端傳送 X-Azure-DebugInfo: 1 至 Azure Front Door,以在 Azure Front Door 回應用戶端時接收 選擇性的回應標頭

從 Front Door 到後端

Azure Front Door 包含傳入要求的標頭,除非因為限制而遭到移除。 Azure Front Door 也會附加下列標頭:

頁首 範例和描述
通過 Via: 1.1 Azure
Front Door 會新增用戶端的 HTTP 版本, 後面接著 Azure 作為 Via 標頭的值。 此標頭表示客戶端的 HTTP 版本,且 Front Door 是用戶端與後端之間要求的中繼收件者。
X-Azure-ClientIP X-Azure-ClientIP: 127.0.0.1
表示與所處理要求相關聯的用戶端IP位址。 例如,來自 Proxy 的要求可能會新增 X-Forwarded-For 標頭,以指出原始呼叫端的 IP 位址。
X-Azure-SocketIP X-Azure-SocketIP: 127.0.0.1
表示與目前要求來源之 TCP 連線相關聯的套接字 IP 位址。 要求的用戶端 IP 位址可能不等於其套接字 IP 位址,因為使用者可以任意覆寫用戶端 IP。
X-Azure-Ref X-Azure-Ref: 0zxV+XAAAAABKMMOjBv2NT4TY6SQVjC0zV1NURURHRTA2MTkANDM3YzgyY2QtMzYwYS00YTU0LTk0YzMtNWZmNzA3NjQ3Nzgz
識別 Azure Front Door 所服務要求的唯一參考字串。 此字串可用來搜尋存取記錄和疑難解答的重要專案。
X-Azure-RequestChain X-Azure-RequestChain: hops=1
Front Door 用來偵測要求循環的標頭,用戶不應該依賴它。
X-Azure-FDID X-Azure-FDID: 55ce4ed1-4b06-4bf1-b40e-4638452104da
識別要求的參考字串來自特定的 Front Door 資源。 您可以在 Azure 入口網站 或使用管理 API 擷取此值。 您可以使用此標頭搭配IP ACL來鎖定端點,只接受來自特定 Front Door 資源的要求。 如需詳細資訊,請參閱常見問題
X-Forwarded-For X-Forwarded-For: 127.0.0.1
X-Forwarded-For (XFF) HTTP 標頭字段通常會識別透過 HTTP Proxy 或負載平衡器連線到網頁伺服器之用戶端的原始 IP 位址。 如果有現有的 XFF 標頭,則 Front Door 會將用戶端套接字 IP 附加至其中,或使用用戶端套接字 IP 新增 XFF 標頭。
X-Forwarded-Host X-Forwarded-Host: contoso.azurefd.net
[X-Forwarded-Host HTTP 標頭] 字段是一種常見方法,用來識別主機 HTTP 要求標頭中用戶端所要求的原始主機。 這是因為處理要求的後端伺服器可能有不同的來自 Azure Front Door 的主機名。 Azure Front Door 會覆寫任何先前的值。
X-Forwarded-Proto X-Forwarded-Proto: http
X-Forwarded-Proto HTTP 標頭欄位通常用來識別 HTTP 要求的起始通訊協定。 根據設定的 Front Door 可能會使用 HTTPS 與後端通訊。 即使反向 Proxy 的要求是 HTTP,也是如此。 任何先前的值都會由 Front Door 覆寫。
X-FD-HealthProbe X-FD-HealthProbe HTTP 標頭欄位用來識別 Front Door 的健康情況探查。 如果此標頭設定為 1,要求會來自健康情況探查。 它可用來使用標頭字段的特定值來限制來自 Front Door 的 X-Forwarded-Host 存取。

從 Front Door 到用戶端

從後端傳送至 Azure Front Door 的任何標頭也會傳遞至用戶端。 Front Door 也會將下列標頭附加至用戶端的所有回應:

頁首 範例和描述
X-Azure-Ref X-Azure-Ref: 0zxV+XAAAAABKMMOjBv2NT4TY6SQVjC0zV1NURURHRTA2MTkANDM3YzgyY2QtMzYwYS00YTU0LTk0YzMtNWZmNzA3NjQ3Nzgz
這是唯一的參考字串,可識別 Front Door 所提供的要求,這對於用來搜尋存取記錄進行疑難解答非常重要。
X-Cache X-Cache: 此標頭描述要求的快取狀態。 如需詳細資訊,請參閱 使用 Azure Front Door 快取。

選擇性偵錯回應標頭

您必須傳送 X-Azure-DebugInfo: 1 要求標頭,才能啟用下列選擇性響應標頭。

頁首 範例和描述
X-Azure-OriginStatusCode X-Azure-OriginStatusCode: 503
此標頭包含後端傳回的 HTTP 狀態代碼。 使用此標頭,您可以識別在後端中執行的應用程式所傳回的 HTTP 狀態代碼,而不需要經過後端記錄。 此狀態代碼可能與 Front Door 傳送至客戶端的回應中的 HTTP 狀態代碼不同。 此標頭可讓您判斷後端的行為錯誤,或 Front Door 服務的問題。
X-Azure-InternalError 此標頭包含處理要求時,Azure Front Door 遇到的錯誤碼。 此錯誤表示問題位於 Azure Front Door 服務/基礎結構內部。 回報支持的問題。
X-Azure-ExternalError X-Azure-ExternalError: 0x830c1011, The certificate authority is unfamiliar
此標頭會顯示 Front Door 伺服器在建立後端伺服器的連線以處理要求時遇到的錯誤碼。 此標頭有助於識別 Front Door 與後端應用程式之間的連線問題。 此標頭包含詳細的錯誤訊息,可協助您識別後端的連線問題(例如 DNS 解析、無效的憑證等等)。

下一步