设置URI重写
更新时间:2022-05-19
接口
本接口用于设置回源协议。
Method | Path | 说明 |
---|---|---|
PUT | /v2/domain/{domain}/config?urlRules | 配置URI重写 |
domain:修改配置的CDN加速域名。
请求体(Request Body)
参数 | 可选 | 类型 | 说明 |
---|---|---|---|
urlRules | 必选 | []UrlRule | UrlRule的定义见下面,UrlRule数组个数<=10 |
UrlRule
参数 | 可选 | 类型 | 说明 |
---|---|---|---|
action | 必选 | string | 合法值为redirect或者break。 redirect:若请求的URI匹配了当前规则,该请求将被302重定向跳转到目标URI。 break:若请求的URI匹配了当前规则,执行完当前规则后,将不再匹配剩余规则。 |
src | 必选 | string | 字符串长度小于等于128。 不含http(s)://头和域名。 最终生成的URI必须以/开头。 支持捕获,比如${1}/test。 目标URI里面如果没有?,则会带上原始参数。如果有?,则会用?后面的参数替换原始参数。 比如访问URI为/a?c=1 • 待重写URI为/a,目标URI为/b,改写后URI为/b?c=1 • 待重写URI为/a,目标URI为/b?,改写后URI为/b • 待重写URI为/a,目标URI为/b?d=1,改写后URI为/b?d=1 |
dst | 必选 | string | 字符串长度小于等于128。 不含http(s)://头和域名。 可以匹配参数,比如只改写带有特定参数的URI。 支持正则以及捕获,比如(/[^?]+)\?c=1 |
响应码 (Http Status Code)
HTTP Status Code | 说明 |
---|---|
200 | 成功 |
400 | 更新失败,参数错误等 |
请求示例
PUT /v2/domain/myself.baidu.com/config?urlRules HTTP/1.1
Host: cdn.baidubce.com
x-bce-date: 2022-02-17T08:05:51Z
x-bce-request-id: 5e978585-0652-4456-89d4-bf8656026a34
Content-Length: 80
Content-Type: text/json;utf-8
{"urlRules":[{"action":"redirect","src":"\/data\/(.*)","dst":"${1}\/data2222"}]}
响应示例
HTTP/1.1 200 OK
Server: nginx
Date: Thu, 17 Feb 2022 08:07:37 GMT
Content-Type: application/json; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/7.1.5
x-bce-request-id: 5e978585-0652-4456-89d4-bf8656026a34
{"status":"RUNNING"}