Cloudflare 如何处理 HTTP 请求标头?

了解 Cloudflare 如何处理来自您的源站 Web 服务器的标头,以及 Cloudflare 会将哪些标头添加到代理的请求。


概述

Cloudflare 将所有 HTTP 标头按原样从客户端传递到源站,并添加如下指定的额外标头。

Cloudflare 会从源站 Web 服务器响应中剔除任何包含句点 (.) 的标头。例如,Cloudflare 代理会删除源站 Web 服务器标头 test.header:data

CF-IPCountry

包含原始访问者所在国家/地区的双字符国家/地区代码。对于未知国家/地区信息,则使用 XX。通过在控制面板中启用 Cloudflare IP Geolocation,将此标头添加到请求中。

示例:Cf-Ipcountry:US

CF-Connecting-IP

将原始客户端(访问者)IP 地址提供给源站 Web 服务器。

示例:CF-Connecting-IP:203.0.113.1

X-Forwarded-For

维护代理服务器和原始访问者 IP 地址。如果发送到 Cloudflare 的请求中不含现有的 X-Forwarded-For 标头,X-Forwarded-For 将具有与 CF-Connecting-IP 标头相同的值:

示例:X-Forwarded-For:203.0.113.1

如果发送到 Cloudflare 的请求中已存在 X-Forwarded-For 标头,则 Cloudflare 会将 HTTP 代理的 IP 地址附加到这个标头:

示例:X-Forwarded-For:203.0.113.1,198.51.100.101,198.51.100.102

在上例中,203.0.113.1 是原始访问者 IP 地址,198.51.100.101198.51.100.102 则是通过 X-Forwarded-For 标头提供给 Cloudflare 的 IP 地址。

要在您的源站 Web 服务器上恢复原始访问者 IP 地址,Cloudflare 建议您的日志或应用程序检查 CF-Connecting-IPTrue-Client-IP 而非 X-Forwarded-For,因为 CF-Connecting-IPTrue-Client-IP 具有仅含一个 IP 的一致格式。

X-Forwarded-Proto

由于 Flexible SSL 指示 Cloudflare 通过 HTTP 连接到您的源站 Web 服务器,因此 X-Forwarded-Proto 会告知源站 Web 服务器访问者在连接 Cloudflare 时实际使用的是 HTTPS 还是 HTTP:

示例:X-Forwarded-Proto: https

CF-RAY

CF-Ray 是一个编有数据中心和访问者请求相关信息的哈希值:

示例:Cf-Ray:230b030023ae2822-SJC

CF-Ray 标头添加到您的源站 Web 服务器日志,以将代理至 Cloudflare 的请求匹配到您服务器日志中的请求。Enterprise 客户还可通过 Cloudflare Logs 查看所有请求。

CF-Visitor

仅包含一个名为 scheme 的键的 JSON 对象。其值与 X-Forwarded-Proto 的值相同(HTTP 或 HTTPS)。CF-Visitor 只有在使用 Flexible SSL 时有意义。

示例:Cf-Visitor: { \"scheme\":\"https\"}

True-Client-IP(仅 Enterprise 计划)

将原始客户端(访问者)IP 地址提供给源站 Web 服务器。True-Client-IP 仅适用于 Enterprise 计划。在下例中,203.0.113.1 是原始访问者 IP 地址。

示例:True-Client-IP:203.0.113.1
除了标头名称外,True-Client-IPCf-Connecting-IP 之间绝无差别。一些拥有传统设备的 Enterprise 客户需要 True-Client-IP,以避免更新防火墙或负载均衡器来读取自定义标头名称。

CDN-Loop

允许 Cloudflare 指定请求在作为循环请求而被阻止前可进入 Cloudflare 网络的次数。

示例:CDN-Loop: cloudflare

相关资源

Not finding what you need?

95% of questions can be answered using the search tool. This is the quickest way to get a response.

由 Zendesk 提供技术支持