- 最新动态
- 功能总览
- 服务公告
- 产品介绍
- 计费说明
- 快速入门
- 用户指南
- 最佳实践
- API参考
- SDK参考
-
常见问题
-
功能咨询
- 什么是全站加速(WSA)?
- CDN支持哪些业务类型?
- CDN支持DNS,HTTPDNS,IP302这三种调度方式吗?
- CDN支持哪些协议?
- CDN点播加速支持HLS和RTMP协议吗?
- CDN能否区分用户使用电脑端还是手机端访问?
- CDN支持针对网站单个页面加速吗?
- CDN是否支持二进制文件加速?
- CDN支持二级域名加速么?
- CDN是否可以对网站的Post请求进行加速?
- CDN有速度限制吗?
- CDN能否加速本地访问购物网站的速度从而抢购商品?
- CDN支持哪些源站类型?
- 华为云CDN是否支持对中文域名的加速?
- 华为云CDN是否支持HTTP3.0?
- 华为云CDN是否支持对内容进行加密后再分发给用户?
- 华为云CDN支持内网加速吗?
- 华为云CDN可以提供所有的节点IP地址和回源IP地址吗?
- 是否支持CDN域名配置从现有账号迁移至华为云另一个账号?
- 加速静态和动态资源的原理是否一样?
- 如何停止CDN业务
- CDN上传文件有没有大小限制?
- CDN是否支持频次控制?
- CDN支持实时监控功能吗?
- CDN是否支持绑定HOST等固定IP访问的方式来提供服务?
-
使用咨询
- 如何开通CDN服务?
- 如何通过项目来管控分配CDN的使用权限?
- 如何对IAM子账号开放CDN部分权限?
- CDN域名服务范围对源站服务器位置、备案是否有要求?
- CDN服务范围仅选择中国大陆或中国大陆境外,未加速区域的用户访问时会怎样?
- CDN是否支持部分地区加速,部分地区不加速?
- CDN流量和带宽的进制换算规则是什么?
- CDN是对网站所在的服务器加速,还是对域名加速?
- CDN支持添加泛域名作为加速域名吗?
- 中国大陆、中国大陆境外、全球服务范围的CDN加速之间有什么区别?
- 国际站账号是否支持调用CDN SDK?
- 服务器在中国大陆境外,网站访问人群在中国大陆,该如何选择服务范围?
- 业务集中在一个城市,是否有必要使用CDN?
- 华为云CDN如何判断用户所属地区?
- 从其它服务商迁移CDN到华为云要怎么做?CDN如何切流?
- 同一个加速域名是否可以加速多个源站域名?
- 配置CDN后能否加速文件上传速度?
- 能否实现国内用户直接访问源站服务器,而国外用户接入CDN加速?
- 源站端口使用的自定义端口而非80端口,能否使用CDN?
- 源站在国内或者国外,可以直接使用全球加速吗?
- 源站为其他云服务厂商(非华为云)的对象存储桶,如何在CDN接入源站?
- 加速域名是否支持对指定线路的访问用户进行CDN加速?
- 加速域名备案过期了有什么影响?
- 加速域名和源站域名有什么区别?
- 接入CDN的加速域名和源站域名需要备案吗?
- 同一个加速域名下面有不同类型的内容(网站、视频点播、文件下载),能使用CDN进行加速吗?
- 开通了“企业项目”后,子账号调用接口时报错“无法获取domain id”
- CDN可以和直播加速共用域名吗?
-
购买计费
- CDN在哪些环节收费,如何收费?
- CDN受到恶意攻击会计费吗?
- CDN流量包相关问题汇总
- CDN是否可以看到单个加速域名的计费情况?
- CDN是否会对HTTP/HTTPS请求数计费?
- CDN从OBS拉取的流量是什么流量?
- 如何设置流量包剩余使用量预警?
- 如何核对每月的CDN月结95带宽峰值计费情况?
- 为什么流量包中的流量使用量与统计分析中的流量显示存在差别?
- 为什么购买了流量包,还会扣除余额?
- 点播加速和文件下载加速收费一样吗?
- 什么是保留期?
- 配置全球加速后中国大陆和中国大陆境外所消耗的流量、带宽是否分开计费?
- 因欠费导致CDN服务不可用的情况排查
- 使用OBS桶作为源站且已购买OBS回源流量包,但CDN产生的回源流量未从OBS回源流量包中扣除
-
域名配置
- CDN是否支持配置带端口的加速域名?
- CDN加速域名可以用子域名吗?
- CDN加速域名的CNAME是否可以直接访问?
- CDN添加安全证书后,源站还需要配置证书吗?
- 审核未通过的域名还可以再修改吗?
- 多个加速域名是否可以使用同一源站IP地址?
- 使用OBS桶作为源站接入CDN加速,OBS域名能否作为加速域名?
- 网站服务在国内如何设置加速网站域名?
- 接入CDN的域名能否根据QPS(每秒请求数)进行限流?
- 华为云CDN是否支持加速经过VPN跳转的资源?
- 使用华为云CDN加速,域名解析是否必须在华为云?
- 同一个CDN加速域名能否同时支持国内和海外?
- 已经停用域名,更换域名解析,为什么访问加速域名还是会到CDN节点?
- 如果加速域名是泛域名,如何配置证书?
- HTTPS证书配置提交时提示“证书链不齐全”,如何进行证书链补齐?
- HTTPS证书配置提交时提示“证书格式不对”,如何进行PEM证书格式转换?
- HTTPS配置是否支持添加自签名证书?
- 开启HTTPS强制跳转后,为什么在浏览器内访问正常,但是通过api请求HTTP会导致post请求丢失参数?
- 配置HTTPS后还可以使用HTTP访问吗?
- 已接入CDN的加速域名备案过期怎么办?
-
缓存配置
- CDN节点的缓存多久会更新,会自动更新吗?
- CDN是否支持正则表达式设置缓存策略?
- CDN是否支持批量配置加速域名的缓存策略?
- CDN会缓存 404、403状态码吗?
- CDN有哪些默认的缓存配置?是否有效?
- 为什么全站加速域名的缓存命中率大于0?
- CDN缓存配置下目录路径指浏览器地址中的路径,还是服务器中文件的路径?
- 为什么CDN的缓存命中率较低?
- 为什么OBS桶删除了文件之后,用户还能通过CDN地址访问下载该文件?
- 如何设置缓存首页(根目录)?
- 如何判断CDN是否缓存命中?
- 在CDN控制台资源缓存过期时间设置为0,为何访问到的仍然不是最新内容?
- 华为云CDN是否支持octet-stream流文件的缓存?
- 缓存配置中配置缓存过期时间为365天,未过期,为什么有些文件能下载有些不能?
- 网站资源不需要缓存,需要直接从源站获取,该如何设置?
- 缓存可以指定目录,以及指定文件后缀吗?
- 域名被盗链,更换域名会影响之前的缓存吗?
- 资源全部预热,缓存过期时间为1年,为什么最近统计到回源流量?
- 如何保证CDN的内容和源站同步?
- 缓存配置为什么没有生效?
-
故障相关
- 域名未在华为云上接入过CDN,系统提示该域名已添加
- 配置HTTPS安全加速后,为什么访问加速域名不成功?
- 从CDN获取到的数据是旧的,没有更新缓存
- 访问CDN加速后的资源,返回状态码304
- 使用OBS私有桶做源站,创建授权委托失败
- 修改源站IP地址后,访问网页无法正常显示
- 访问失败,报Access-Control-Allow-Origin错误
- 添加CDN加速后,百度蜘蛛为什么抓取失败?
- 为什么OBS桶接入CDN后,访问域名会列出所有文件列表?
- 为什么CDN配置好以后,视频播放卡顿?
- 为什么CDN被禁用了?
- 为什么域名配置HTTPS后页面一直提示301?
- 为什么配置CDN加速后,ping加速域名出现超时?
- 配置CDN加速后,回源获取的资源不正确
- 配置CDN后,为什么首次访问很慢?
- 配置了CDN加速,为什么中国大陆境外无法访问?
- 使用CDN加速OBS桶文件后访问变成强制下载
- 域名添加失败怎么办?
- CDN节点运维下线说明
- 刷新预热
- 安全相关
- 统计日志
- 回源相关
- 配额相关
-
功能咨询
- 故障排除
- WSA用户指南
- 视频帮助
- 产品术语
- 通用参考
链接复制成功!
鉴权方式C1
CDN分发的内容默认为公开资源,URL鉴权功能主要用于保护用户站点资源,防止资源被用户恶意下载盗用。华为云CDN提供了4种URL鉴权配置。本章为您详细介绍鉴权方式C1的实现方式。
- URL鉴权功能默认关闭。
- 如果您的域名有特殊配置,暂不支持控制台自助配置URL鉴权。
- 业务类型为“全站加速”的域名暂不支持配置“鉴权方式C1”。
- 配置鉴权后,用户将携带鉴权参数访问。如果您没有配置“忽略URL参数”:
- 会增大回源概率。
- 如果您的源站为对象存储桶,将会产生桶的流量流出费用。
原理说明
http://DomainName/{<sha256>/<timestamp>}/FileName
http://DomainName/{<md5hash>/<timestamp>}/FileName
鉴权字段描述如下表所示:
字段 |
描述 |
---|---|
DomainName |
CDN加速域名 |
timestamp |
鉴权服务器生成鉴权URL的时间,即:鉴权开始时间,值为1970年1月1日以来的当前时间秒数,十六进制整数。 |
有效时间 |
鉴权有效的时间长度,取值为0~31536000s。 示例:如果设置有效时间为1800s,则当前时间小于或等于“timestamp+1800s”时,用户才可以访问CDN。当前时间大于“timestamp+1800s”时,判定为失效。 |
md5hash |
通过md5算法计算出来的验证串,数字0-9和小写英文字母a-z混合组成,固定长度32。 |
sha256 |
通过sha256算法计算出来的验证串,数字0-9和小写英文字母a-z混合组成,固定长度64。 |
Filename |
实际回源访问的URL,鉴权时Filename需以/开头。不包含?后面的参数。 |
PrivateKey |
用户设定的鉴权密钥,来生成加密URL。如huaweicloud12345。由6~32位大/小写字母和数字构成。 |
校验方法
CDN服务器收到请求后,会按照如下步骤进行校验:
- 是否携带鉴权参数。如果没有携带鉴权参数,认为请求非法,返回HTTP 403错误。
- 时间校验:CDN服务器接收到客户端请求后,判断鉴权URL中的“timestamp参数 + 鉴权URL有效时长”是否大于当前时间。
- 如果“timestamp参数 + 鉴权URL有效时长”小于当前时间,认为过期失效并返回HTTP 403错误。
- 如果“timestamp参数 + 鉴权URL有效时长”大于或等于当前时间,则通过时间校验,继续执行步骤3。
- 加密串校验:时间校验通过后,则以sstring方式构造出一个字符串(参考以下sstring构造方式)。然后使用md5(sha256)算法算出HashValue,并和用户请求中带来的md5hash(sha256)进行对比。结果一致则认为鉴权通过并返回文件,否则鉴权失败返回HTTP 403错误。HashValue计算方式如下:
sstring = "PrivateKeyFilenameTimestamp" HashValue = md5sum(sstring)
或:sstring = "PrivateKeyFilenameTimestamp" HashValue = sha256sum(sstring)
操作步骤
- 登录华为云控制台,在控制台首页中选择“CDN与智能边缘 > 内容分发网络 CDN”,进入CDN控制台。
- 在左侧菜单栏中,选择“域名管理”。
- 在域名列表中,单击需要修改的域名或域名所在行的“设置”,进入域名配置页面。
- 选择“访问控制”页签,单击“URL鉴权配置”,进入配置弹窗。
图1 配置URL鉴权
- 打开“状态”开关。
- 参照下表配置参数,单击“确定”,完成配置。
表2 参数说明 参数
说明
鉴权方式
选择“方式C1”。
鉴权范围
指定哪些文件参与鉴权,目前仅支持选择所有文件、指定文件后缀鉴权、指定文件后缀不鉴权。
鉴权继承配置
为M3U8/MPD索引文件下的TS/MP4文件添加鉴权参数,解决因鉴权不通过导致的TS/MP4文件无法播放的问题。
说明:
- 如果嵌套多层M3U8/MPD文件,仅解析第一层M3U8/MPD文件,不展开嵌套M3U8/MPD文件的TS/MP4流。
- 支持标准M3U8格式(按行解析:解析不成功时返回原值,支持以标签#EXT-X-MAP开头的URI,支持以非#开头的URL/URI)。
- 支持标准MPD格式(按行解析:解析不成功时返回原值,识别标签<BaseURL></BaseURL>之间的URI,不支持标签SegmentTemplate)。
- 如果您的M3U8/MPD索引文件中含有中文或特殊字符,CDN在鉴权计算时不会自动转码。如果客户端访问时存在自动将中文或特殊字符转码逻辑,可能导致鉴权不通过,从而访问失败。
- 如果源站响应给CDN节点的是压缩(Gzip和Brotli)后的资源,则鉴权继承配置失效。
鉴权继承开始时间
- 与M3U8/MPD访问链一致:鉴权开始时间取M3U8/MPD访问的时间。
- 当前时间:鉴权开始时间取鉴权服务器的当前时间。
文件后缀
当需要指定文件类型时填写此参数,指定特定后缀的文件参与或者不参与鉴权。
- 仅支持小写字符、数字,多个文件后缀用“;”分隔。
鉴权KEY
鉴权密码,由6~32位大/小写字母和数字构成。
说明:
为了增加安全性,建议设置8~32位字母+数字组成的密码。
鉴权KEY(备)
鉴权备用密码,可不用配置。当需要替换密钥时,如果需要新旧密钥同时生效,可设置备KEY。主、备KEY之一鉴权通过即可正常访问。
- 由6~32位大/小写字母和数字构成。
说明:
为了增加安全性,建议设置8~32位字母+数字组成的密码。
加密算法
用于信息加密的算法,可选MD5或SHA256。
有效时间长度
鉴权URL的有效时间,取值为0~31536000s。
鉴权计算器
鉴权计算器是为了方便您生成鉴权URL以供用户使用,根据表2和表3设置不同的参数后,单击“生成”即可生成鉴权URL和过期时间。
说明:
如果您的鉴权URL中含有中文或特殊字符,请先进行URL转码(即Encode)后使用。
关闭URL鉴权
关闭“状态”开关即可关闭URL鉴权配置,此时所有配置将被清空,下次启用URL鉴权功能时需要重新配置相关参数。
示例说明
以使用MD5算法为例:
- 回源请求对象:
http://hwcdn.example.com/T128_2_1_0_sdk/0210/M00/82/3E/test.mp3
- 密钥设为:huaweicloud12345(用户自行设置)
- 鉴权生效开始日期为:2017年6月30日10:00:00,计算出来的秒数为1498788000,并转换为十六进制为5955b0a0。并且设置有效时间为1800s。
- CDN服务器构造一个用于计算md5hash的签名字符串:
huaweicloud12345/T128_2_1_0_sdk/0210/M00/82/3E/test.mp35955b0a0
- CDN服务器根据该签名字符串计算md5hash:
md5hash = md5sum(huaweicloud12345/T128_2_1_0_sdk/0210/M00/82/3E/test.mp35955b0a0) = 8540f43a2416fd4a432fe4f92d2ea089
- 请求CDN时URL:
http://hwcdn.example.com/8540f43a2416fd4a432fe4f92d2ea089/5955b0a0/T128_2_1_0_sdk/0210/M00/82/3E/test.mp3
如果请求在有效时间内(请求时间小于等于2017年6月30日10:30:00),并且计算出来的md5hash与用户请求中带的md5hash值(8540f43a2416fd4a432fe4f92d2ea089)一致,则鉴权通过。