一、背景
HTTP请求头是HTTP请求消息的组成部分,用于携带特定的请求参数并传递给服务器。通过配置回源HTTP请求头规则,可将特定参数传递给源站。
二、功能位置
登录云防御控制台(https://defense.yunaq.com/) 左侧导航栏点击域名管理-通用设置,找到【自定义HTTP头】功能。

三、操作步骤
1、点击自定义HTTP头模块的【添加/修改】按钮,进入规则列表页面,可以查看、修改、删除、新增规则

2、点击左上角的【添加规则】可在弹窗内配置自定义参数

| 配置项 | 说明 |
|---|---|
| HTTP头 | 必填,可以选择常用HTTP头,也支持选择自定义的HTTP头 |
| 值 | 必填,需要设置HTTP头对应的值,大小写敏感。例如:HTTP头设置为Content-Language,可以设置对应值为zh-CN
最大长度为160,支持英文字符、数字和特殊字符 |
| 开关 | 必填,开启后该条规则则生效,关闭后这条规则不生效 |
| 描述 | 非必填,可以为HTTP头增加描述,便于记录管理HTTP头
最大长度为100,utf-8编码格式,支持中文,数字,特殊字符 |
- 添加的HTTP响应头每个类型仅能配置一个参数,例如已经配置了Content-Disposition 规则为abc,就不能再配置Content-Disposition 规则为efg。
- 若源站已配置响应头,用户在云防御节点二次添加了,则执行替换操作
四、HTTP头常用参数
| 头部参数 | 说明 |
|---|---|
| Content-Language | 指定资源在客户端(如浏览器)响应的语言 |
| Access-Control-Allow-Origin | 指定跨域请求时,允许访问资源的请求来源 |
| Access-Control-Allow-Methods | 指定跨域请求时,允许的跨域请求方法 |
| Access-Control-Max-Age | 指定跨域请求时,对特定资源的预请求返回结果的缓存时间 |
| Access-Control-Expose-Headers | 指定允许访问的自定义头信息 |
| 自定义 | 支持添加自定义 Header,自定义 key-value 设置 |
五、不允许配置的响应头
| 类别 | 头 | 原因 |
|---|---|---|
|
平台专用头 |
Via、X-Cache、X-Via-JSL、X-CDN-Edge、X-Cache-Shadow、X-Shadow-Status、Upstream-Status、Upstream-Addr | 云防御平台缓存状态/链路统计专用 |
|
HTTP 协议/传输语义头 |
Content-Length、Content-Type、Content-Encoding、Transfer-Encoding、Connection、Keep-Alive、Date、Set-Cookie、Location、ETag、Last-Modified、Vary、Accept-Ranges、Content-Range、Content-Disposition、Content-MD5、Retry-After、WWW-Authenticate | 影响传输、缓存协商、跳转等协议行为,配置后可能破坏正常访问 |
|
缓存控制头 |
Cache-Control、Expires | 与平台缓存策略冲突 |
|
平台功能保留头 |
Strict-Transport-Security(由 HSTS 功能配置)、Access-Control-*(由跨域 CORS 功能配置)、Server、X-Powered-By(由服务器信息伪装功能配置) | 已有对应功能开关,避免双头冲突 |
|
平台内部前缀 |
X-Jsl-*、__Jsl-*、X-FW-* | 平台内部协议头 |