回源URL改写
当回源请求URL与源站URL不匹配时,会导致回源失败。您可以在CDN控制台改写回源URL,提高回源请求URL与源站的匹配度,提升回源命中率。
适用场景
因业务需要,客户调整了资源分类,导致某视频文件在源站的存放路径由/test/改成了/video/,而此时终端用户访问该资源的URL没有发生变化,这种情况下就可以使用回源URL改写的功能改变CDN回源获取资源的URL,终端用户不需要修改访问URL就可以获取正确的资源。
配置约束
- 最多添加20条回源URL改写规则。
- 如果您配置了B类或C1类URL鉴权,暂不支持回源URL改写功能。
- 后台有特殊配置的域名暂不支持改写回源URL。
- 如果您域名的业务类型是全站加速,本功能仅对静态资源生效。
操作步骤
- 登录华为云控制台,在控制台首页中选择“ CDN与智能边缘 > 内容分发网络 CDN”,进入CDN控制台。
- 在左侧菜单栏中,选择 。
- 在域名列表中,单击需要修改的域名或域名所在行的“设置”,进入域名配置页面。
- 选择“回源配置”页签。
- 在“回源URL改写”模块,单击“编辑”,系统弹出配置弹框。
图1 回源URL改写
表1 参数说明 参数
说明
匹配方式
所有文件:改写当前域名下所有文件的回源URL。
URL路径:改写指定路径下的回源URL,前缀匹配。如果待改写URI为/test,将会改写前缀匹配到/test的所有文件(例如/test、/test01、/test**等)。
通配符:支持通配符匹配,全路径匹配,待改写URI需要指定到具体路径,如/test/*/*.mp4。
全路径:改写当前路径的URL,全路径匹配,待改写URI需要指定到具体路径,如/test/01/abc.mp4。
待改写回源URI
需要替换的URI。
- 以正斜线(/)开头的URI,不含http(s)://头及域名。
- 长度不超过512个字符。
- 支持通配符*匹配,如:/test/*/*.mp4。
- 匹配方式为“URL路径”或“全路径”时,不支持配置参数。
- 匹配方式为“通配符”且输入“/”时,匹配根目录。
目标回源URI
替换后的URI。
- 以正斜线(/)开头的URI,不含http(s)://头及域名。
- 长度不超过256个字符。
- “匹配方式”为“通配符”时,通配符 * 可通过$n捕获(n=1,2,3...,例如:待改写回源URI为/test/*/*.mp4,目标回源URI为/newtest/$1/$2.mp4,则用户请求/test/11/22.mp4时,$1捕获11,$2捕获22,实际回源的URI为/newtest/11/22.mp4),其他“匹配方式”不支持配置$n。
优先级
回源URL改写规则的优先级。
- 优先级设置具有唯一性,不支持多条回源URL改写规则设置同一优先级,且优先级不能输入为空。
- 多条规则下,不同规则中的相同资源内容,CDN按照优先级高的规则执行URL改写。
- 取值为1~100之间的整数,数值越大优先级越高。
配置示例
示例1:加速域名www.example.com的回源URL改写配置如下图所示。
原始请求:https://www.example.com/test/a.txt
改写后的回源请求:https://www.example.com/test/b.txt
示例2:加速域名www.example.com的回源URL改写配置如下图所示。
原始请求:https://www.example.com/test/aaa/bbb.mp4
改写后的回源请求:https://www.example.com/newtest/aaa/bbb.mp4
示例3:加速域名www.example.com的回源URL改写配置如下图所示。
原始请求:https://www.example.com/test/aaa/bbb.txt
改写后的回源请求:https://www.example.com/new.jpg
示例4:加速域名www.example.com的回源URL改写配置如下图所示。
原始请求:https://www.example.com/123.html?id=3
改写后的回源请求:https://www.example.com/thread0/123.html?id=3