配置回源HTTP请求头

更新时间: 2023-12-06 20:11:27

阿里云DCDN默认支持携带一些例如客户端IP地址的请求头,也支持自定义配置。如果您需要改写用户回源请求中的HTTP Header,可以通过配置回源HTTP请求头实现,支持增加、删除、变更或替换回源HTTP请求头,满足更多实际业务需求。

背景信息

HTTP请求头是HTTP的请求消息头的组成部分之一,可携带特定请求参数信息并传递给服务器。

DCDN节点请求回源站拉取资源时,源站可获取到回源请求头中携带的信息。您可以通过该功能,改写用户回源请求中的HTTP Header信息,携带特定的参数信息给源站,实现特定业务需求。例如,通过X-Forwarded-For头部携带真实客户端IP至源站。

源站服务器通过用户回源请求中携带的X-Forwarded-For头部获取客户端真实IP的方式,请参见获取客户端真实IP

image

注意事项

  • 回源请求指用户请求中通过DCDN回源的HTTP消息。回源HTTP请求头配置只会影响通过CDN回源的HTTP消息,对于DCDN节点直接响应给用户的HTTP消息不做修改。

  • 不支持对泛域名配置回源HTTP请求头。

  • 阿里云DCDN默认支持携带以下HTTP请求头回源,您无需额外配置。

    回源HTTP Header

    说明

    示例

    Ali-Cdn-Real-Port

    客户端与DCDN节点建连时使用的真实端口。

    Ali-Cdn-Real-Port:80

    Ali-Cdn-Real-Ip

    客户端与DCDN节点建连时使用的真实IP。

    Ali-Cdn-Real-Ip:192.168.0.1

    X-Forwarded-For

    客户端请求经过DCDN节点回源的整个链路上,包括客户端和CDN节点的IP信息。

    X-Forwarded-For:192.168.0.1, 172.16.0.1

    X-Client-Scheme

    客户端发送到DCDN节点的应用层请求使用的协议,例如:HTTP、HTTPS。

    X-Client-Scheme:http

    Host

    客户端请求在回源时实际访问的源站Web站点域名。

    Host:example.com

    Via

    客户端请求经过的所有DCDN节点的名称。

    Via:cn2546-10.l1, cache1.cn2546-10, l2cn2547-7.l2, cache1.l2cn2547-7

  • 回源HTTP请求头的值如果配置的是某个变量,那么实际使用的时候会被设置为具体的变量值,以下为可以使用的变量。

    回源HTTP Header

    说明

    $http_Ali_Cdn_Real_Port

    在回源头里面添加客户端真实端口信息,向源站传递客户端端口信息。

    $http_Ali_Cdn_Real_Ip

    在回源头里面添加客户端真实IP信息,向源站传递客户端IP地址信息。

    $proxy_add_x_forwarded_for

    在回源头里面添加X-Forwarded-For信息,向源站传递客户端IP和中间的代理服务器IP。

操作步骤

  1. 登录DCDN控制台

  2. 在左侧导航栏,单击域名管理

  3. 域名管理页面,单击目标域名对应的配置
  4. 在指定域名的左侧导航栏,单击回源配置

  5. 单击自定义回源HTTP头页签。

  6. 单击添加

  7. 自定义HTTP回源头设置页面,选择参数,并设置取值

    配置回源HTTP头

    配置项

    示例

    说明

    参数

    自定义回源头

    选择自定义回源头或选择已经预设好的回源头参数。

    自定义参数

    Content-Type

    自定义回源头名称为Content-Type。

    取值

    text/html

    一个回源头参数中可以配置多个值,多个值用英文逗号(,)分隔。

  8. 单击确定

常见问题

使用CDN/DCDN后如何获取Nginx服务的真实IP地址

阿里云首页 全站加速 DCDN 相关技术圈