配置回源请求头
如果您需要修改用户回源请求URL中的HTTP头部信息,可以通过配置回源请求头参数来实现。本章帮您了解回源请求头的配置方法。
背景信息
当用户请求的内容CDN节点无缓存时,CDN会回源请求资源。如果您想要改写用户回源请求URL的HTTP头部信息,可以在CDN控制台完成相关配置。
HTTP消息头,是指在超文本传输协议(Hypertext Transfer Protocol,HTTP)的请求和响应消息中的消息头部分,定义了HTTP传输过程中的具体参数。
注意事项
- 回源请求头配置只会影响通过CDN回源的HTTP消息,对于CDN节点直接响应给用户的HTTP消息不做修改。
- 同一个请求头不允许同时存在两个不同的取值。
- 如果您的域名在后台有特殊配置,暂不支持配置回源请求头。
- 最多可添加10条回源请求头。
操作步骤
- 登录华为云控制台,在控制台首页中选择“ CDN与智能边缘 > 内容分发网络 CDN”,进入CDN控制台。
- 在左侧菜单栏中,选择 。
- 在域名列表中,单击需要修改的域名或域名所在行的“设置”,进入域名配置页面。
- 选择“回源配置”页签。
- 在“回源请求头”配置模块,单击“添加”按钮。
- 配置回源请求头信息
- 添加:在CDN侧添加回源请求头参数,用来改写用户请求URL中的HTTP头部信息。
图1 添加回源请求头
表1 参数说明 配置项
示例
说明
请求头操作
设置
在回源HTTP请求中增加指定的请求头参数。
- 如果用户请求URL的HTTP头部携带X-test参数,取值111。CDN侧设置的X-test取值为aaa,那么回源时X-test的取值为aaa。
- 如果用户请求URL的HTTP头部没有携带X-test参数,那么回源时增加X-test,取值为aaa。
删除
删除用户请求URL中已经存在的HTTP头部信息。
- 如果用户请求URL的HTTP头部携带X-test参数,回源时会删除该参数。
请求头参数
X-test
- 长度1~100。
- 以字母开头,由数字0 - 9、字符a - z、A - Z,及特殊符“-”组成。
请求头取值
aaa
- 长度为1~1000。
- 由数字0 - 9、字符a - z、A - Z,及特殊符“.”、“-”、“_”、“*”、“#”、“!”、“&”、“+”、“|”、“^”、“~”、“'”、“"”、“/”、“:”、“;”、“,”、“=”、“@”、“?”、“<”、“>”组成。
- 不支持变量配置,如:$client_ip,$remote_port等。
- 编辑:修改当前回源请求头取值或操作。单击回源请求头列表“操作”列“编辑”按钮,弹框如下:
图2 编辑回源请求头
配置项
示例
说明
请求头操作
设置
在回源HTTP请求中增加指定的请求头参数。
- 如果用户请求URL的HTTP头部携带X-test参数,取值111。CDN侧设置的X-test取值为aaa,那么回源时X-test的取值为aaa。
- 如果用户请求URL的HTTP头部没有携带X-test参数,那么回源时增加X-test,取值为aaa。
删除
删除用户请求URL中已经存在的HTTP头部信息。
- 如果用户请求URL的HTTP头部携带X-test参数,回源时会删除该参数。
请求头参数
X-test
此处无法修改。
请求头取值
aaa
- 长度为1~1000,当参数为Content-Disposition、Content-Language时,取值长度不超过128个字符。
- 由数字0 - 9、字符a - z、A - Z,及特殊符“.”、“-”、“_”、“*”、“#”、“!”、“&”、“+”、“|”、“^”、“~”、“'”、“"”、“/”、“:”、“;”、“,”、“=”、“@”、“?”、“<”、“>”组成。
- 不支持变量配置,如:$client_ip,$remote_port等。
- 删除:删除当前回源请求头配置。单击回源请求头列表“操作”列“删除”按钮,在同步配置弹框勾选其他需要删除该头部的域名,单击“确定”,完成配置。
- 单击确定,完成配置。
配置示例
加速域名“www.example.com”的回源请求头设置如下:
当用户访问“http://www.example.com/abc.jpg”文件时,CDN节点没有缓存该资源,CDN回源请求资源。回源时增加“X-cdn头部”,同时删除“X-test头部”。
使用限制
- 如果您的后台存在特殊配置,暂不支持配置Content-Type、Cache-Control、Expires。
- 以下请求头仅支持修改响应头信息,不支持将“请求头操作”类型设置为“删除”:
Expires
Content-Disposition
Content-Type
Content-Language
Cache-Control
-
- 目前不支持添加/删除/编辑以下标准头部信息:
Origin |
accept-ch |
clear-site-data |
push-policy |
WsTag |
Tcp-Retrans |
access-control-allow-methods |
access-control-max-age |
Vary |
Date |
X-Forward-Type |
width |
Age |
ETag |
Purge-Extra |
X-Cacheable |
access-control-allow-headers |
Front-End-Https |
ping-to |
content-range |
cross-origin-opener-policy |
Location |
viewport-width |
Mime-Version |
Proxy-Support |
X-Resp-Time |
If-Range |
sec-fetch-dest |
device-memory |
X-Mem-Url |
Cdn-Src-Ip |
ping-from |
Allow |
X-Url-Blackwhite-List |
early-data |
Sec-WebSocket-Extensions |
if-unmodified-since |
X-Forward-Uri |
Conf-File |
x-download-options |
X-Error-Status |
Negotiate |
x-permitted-cross-domain-policies |
service-worker-allowed |
X-Appa |
x-firefox-spdy |
content-dpr |
X-Miss-Times-Limit |
X-Bwctrl-Limit |
X-Bwctrl-Para |
X-Max-Conns |
nel |
public-key-pins-report-only |
X-MAA-Alias |
Sec-WebSocket-Location |
X-Cache-2 |
Authorization |
Expect |
last-event-id |
Sec-WebSocket-Key |
X-Refresh-Pattern |
forwarded |
X-Local-Ip |
Sec-WebSocket-Protocol |
feature-policy |
cross-origin-resource-policy |
Request-Range |
Conf-Other |
strict-transport-security |
signed-headers |
Cdn-Server-Ip |
Sec-WebSocket-Version |
accept |
X-Black-List |
content-location |
sourcemap |
Partition-Block-Size |
Proxy-Authentication-Info |
cross-origin-embedder-policy |
X-Request-Id |
x-dns-prefetch-control |
if-none-match |
If-Non-Match |
Public |
X-White-List |
x-ua-compatible |
Keep-Alive |
Transfer-Encoding |
alt-svc |
max-age |
Last-Modified |
x-xss-protection |
Sec-WebSocket-Nonce |
dnt |
Link |
x-robots-tag |
Key |
expect-ct |
sec-fetch-site |
access-control-request-headers |
X-Error-URL |
X-Log-Url |
content-encoding |
X-Times-Limit |
X-Appa-Origin |
X-Miss-Rate-Limit |
X-IP-Region |
Dynamic |
X-Squid-Error |
From |
accept-ch-lifetime |
X-MAA-Auth |
Connection |
X-Via-CDN |
Max-Forwards |
Upgrade |
sec-fetch-user |
content-security-policy-report-only |
Pragma |
save-data |
X-Client-Ip |
Cdn-Qos |
x-powered-by |
X-Forward-Measured |
accept-push-policy |
server |
large-allocation |
X-Request-Uri |
X-Forward-Ip |
Host |
Proxy-Authenticate |
X-Request-Url |
X-Cache-Lookup |
Conf-Option |
X-Forward-Host |
upgrade-insecure-requests |
X-Accelerator-Vary |
signature |
X-Ip-Blackwhite-List |
X-Cdn-Src-Port |
Sec-WebSocket-Draft |
Sec-WebSocket-Origin |
X-IP-Region-CN |
public-key-pins |
Ws-Hdr |
If-Match |
Proxy-Authorization |
X-Rate-Limit |
sec-fetch-mode |
trailer |
X-Rewrite-Url |
Via |
X-Cache |
X-Mgr-Traffic |
accept-signature |
Warning |
dpr |
If-Modified-Since |
Authentication-Info |
access-control-request-method |
Content-Length |
x-frame-options(xfo) |
Range |
A_Dynamic |
te |
x-forwarded-host |
Title |
WWW-Authenticate |
tk |
X-Query-Key |
accept-charset |
access-control-allow-origin |
accept-ranges |
report-to |
access-control-expose-headers |
x-content-type-options |
Proxy-Connection |
server-timing |
Retry-After |
x-requested-with |
X-No-Referer |
X-Forward-Peer |
Sec-WebSocket-Accept |
X-Forwarded-For |
Conf-Err-Host |
Sec-WebSocket-Key2 |
access-control-allow-credentials |
X-Denyattack-Dynconf |
referer-policy |
Sec-WebSocket-Key1 |
content-security-policy |
timing-allow-origin |
X-DNS-Time |
Conf-File-List |
X-expireURL |
x-pingback |
Purge-Domain |
Server |
- |
- |