搜索本产品文档关键词
设置HTTP头
所有文档
menu
没有找到结果,请重新输入

内容分发网络 CDN

设置HTTP头

概述

HTTP头设置功能支持您来改写源站响应报文中的HTTP Header和客户端请求中的HTTP Header信息,可以添加、删除、修改HTTP请求头/响应头。

背景信息

当您的网站接入CDN后,由于客户端和源站会根据HTTP header的字段信息进行相关的行为处理,所以您会有修改HTTP header的需求。百度智能云CDN支持您对HTTP请求头和响应头的修改。

注意事项

  • 每个域名最多可以配置20个HTTP头信息。
  • 添加、修改或删除HTTP头预计10分钟内生效。
  • HTTP头的值最大长度为160,支持英文字符、数字和特殊字符。
  • HTTP头的描述最大长度为100,utf-8编码格式,支持中文,数字,特殊字符。
  • 可以通过用户请求头中的accept-encoding字段设定CDN输出的静态文件有gzip压缩功能。

常用HTTP头

常用HTTP头如下:

参数 解释
Cache-Control 指定浏览器请求和响应遵循的缓存机制
Expires 指定浏览器响应对象的过期时间
Content-Type 指定浏览器响应对象的内容类型
Content-Disposition 激活自定义资源下载设置,以及下载时默认文件名
Content-Language 指定资源在客户端(如浏览器)响应的语言
Access-Control-Allow-Origin 指定跨域请求时,允许访问资源的请求来源
Access-Control-Allow-Methods 指定跨域请求时,允许的跨域请求方法
Access-Control-Max-Age 指定跨域请求时,对特定资源的预请求返回结果的缓存时间
Access-Control-Expose-Headers 指定允许访问的自定义头信息

自定义响应头如下:

参数 解释
cdn-source CDN厂商代号
cdn-ip CDN节点IP
cdn-user-ip 用户IP

自定义请求头如下:

参数 解释
cdnfrom CDN厂商代号
Cdn-Src-Ip 用户IP

设置HTTP头

  1. 登录 CDN管理控制台,在控制台左侧导航选择 域名管理
  2. 域名管理 页,选择需要设置HTTP头的域名,在最右侧操作栏单击 管理,如下图所示。

    image.png

  3. 域名详情 页,单击 高级配置,如下图所示。

    image.png

  4. 高级配置 页的 自定义HTTP头配置 处,点击 添加HTTP头

    image.png

    配置项 说明
    类型 您可选择 设置HTTP响应头 或者 HTTP请求头
    HTTP头 除了支持设置 常用HTTP头 外,还支持输入自定义的HTTP头。
    您需要设置HTTP头对应的值,大小写敏感。例如:HTTP头设置为Content-Language,您可以设置对应值为zh-CN。 还可以设置值为变量,目前支持7个变量值:${uri},${host},${scheme},${request_uri},${jvip},${remote_addr}
    描述 您可以为HTTP头增加描述,便于记录管理HTTP头。

注意:

  • 当资源在节点未命中时会进行回源,此时源站返回的头部信息会一起返回给用户。
  • 由于 HTTP响应头配置是针对域名,因此一旦配置生效,用户对该域名下任意一个资源的响应消息中均会加入所配置头部。
  • 配置 HTTP响应头仅影响客户端的响应行为,不会影响到 CDN 节点的缓存行为。

变量值解释:

  • ${jvip}表示节点IP。
  • ${remote_addr}表示客户端IP,存在代理的情况下不准确。

配置示例:

image.png

  1. 完成配置后,点击 确定
  2. 在HTTP头列表中,您可以单击 编辑删除,对当前配置的HTTP头进行相应操作。

    image.png

配置影响

在控制台配置完HTTP头后,在使用当前域名进行请求或者访问返回代码中会携带配置的http头参数。如设置常见HTTP头参数如下:Content-Language为english,Expires为20,在使用curl请求时结果如下:

  • 请求示例(以www.baidu.com域名为例)

    > GET / HTTP/1.1
    > Host: www.baidu.com
    > User-Agent: curl/7.43.0
    > Accept: */*
  • 返回示例

    < HTTP/1.1 200 OK
    < Server: bfe/1.0.8.18
    < Date: Thu, 23 Mar 2017 08:31:37 GMT
    < Content-Type: text/html
    < Content-Length: 2381
    < Last-Modified: Mon, 23 Jan 2017 13:27:30 GMT
    < Connection: Keep-Alive
    < ETag: "588604c2-94d"
    < Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
    < Pragma: no-cache
    < Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/
    < Accept-Ranges: bytes
    < Content-Language: english
    < Expires: 20

    返回示例的最后两行可以看到已经携带HTTP的设置参数。

相关API

上一篇
回源配置
下一篇
设置视频拖拽