# 静态资源配置
微信云托管-静态资源存储-静态资源配置中管理所有资源文件内容,并可以查看上传后文件的详细信息。
# 一、域名配置
静态资源存储提供默认的域名,可以直接使用,用于开发测试和产品体验。
你可以设置索引文件,默认是 index.html
当你访问域名时,会直接路由到你资源中根目录的 index.html
文件。
如果资源中根目录有一个文件夹 res
, res
文件夹中有一个文件 test.html
,你想设置这个文件为索引文件,则需要填写如下路径:
res/test.html
如果有多级文件夹,则依次填写,文件夹之间用 /
隔开。
自定义域名配置相关参考对应文档
当前我们正在加紧支持静态资源存储的自定义域名(2021.12.16)
# 二、缓存配置
可以针对文件的 CDN 回源时间进行管理,默认所有文件的回源时间为 2 分钟。
规则支持 文件名
、文件类型
和 文件夹
三种匹配方式。
支持三种配置方式:
按文件类型设置缓存过期时间
- 配置缓存时间时可填入多项,每项用 ; 隔开,内容区分大小写,必须是以 . 开头的文件后缀,例如 .png。
- 刷新时间设置为 0 时,不缓存,所有请求转发至用户源站,缓存时间设置最大值不能超过 365 天。
- 输入框默认提示:例如 .png,.jpg,.php。
按文件夹设置缓存过期时间
- 配置缓存时间时可填入多项,每项用 ; 隔开,内容区分大小写,必须是以 / 开头的文件夹。
- 刷新时间设置为 0 时,不缓存,所有请求转发至用户源站,缓存时间设置最大值不能超过 365 天。
按文件设置缓存过期时间
- 配置缓存时间时可填入多项,每项用 ; 隔开,内容区分大小写,支持匹配某一类型文件,例如 /test/abc/*.jpg。
- 单击保存,将进行配置部署,您需等待 5 分钟左右。
**注意:**过短的缓存时间将大幅度消耗 CDN 流量,建议在开发时合理配置缓存时间。
# 什么是缓存配置?
对象存储内的文件默认 CDN 加速,开发者可以通过改变缓存配置来控制 CDN 遵循的过期规则。 合理地配置缓存时间,能够有效的提升命中率,降低回源率,节省您的流量资源消耗。 用户访问资源会首先去CDN节点请求,若节点有缓存则返回资源,无缓存则回源获取。
注意:
刷新时间设置为0时,不缓存,所有请求转发至用户源站;缓存时间设置最大值不能超过365天。
在控制台中上传文件/文件夹,会自动刷新节点内的缓存文件。
配置部署中,若您再次编辑缓存配置,会覆盖之前的配置。以最后一次部署结果为准。
# 缓存策略优先级
配置项列表底部优先级高于顶部优先级。您可以拖动列表中的调整优先级的移动图标即可调整优先级。
当设置了多条缓存策略时,相互之间会有重复,假如某域名已配置如下缓存配置:
目标 | 缓存时长 |
---|---|
所有文件 | 2分钟 |
.php .jsp .aspx | 0秒 |
.jpg .png .gif | 300秒 |
/test/*.jpg | 400秒 |
/test/abc.jpg | 200秒 |
假设域名为 cloud.weixin.qq.com
,资源为 cloud.weixin.qq.com/test/abc.jpg
,其匹配方式如下:
匹配第一条所有文件,命中,此时缓存时间为2分钟。
匹配第二条,未命中。
匹配第三条,命中,此时缓存时间为300秒。
匹配第四条,命中,此时缓存时间为400秒。
匹配第五条,命中,此时缓存时间为200秒。
因此最终缓存时间为200秒,以最后一次匹配生效。
# 三、防盗链配置
为了避免恶意程序使用资源 URL 盗刷公网流量或使用恶意手法盗用资源,而为自己带来不必要的损失,你可以根据业务需要合理配置来进行安全防护。
打开防盗链配置开关,会自动弹出上述对话框,填写配置信息,确定后即操作完成,配置项说明如下:
- 类型-黑名单: 拒绝referer名单内的域名访问,若referer名单内的域名访问地址,则返回403。
- 类型-白名单: 允许referer名单内的域名访问,若referer名单外的域名访问存,则返回403。
- Referer: 支持设置最多10条域名且为相同前缀匹配,每条一行,多条请换行;支持域名、IP和通配符*等形式的地址。
- 空referer: HTTP请求中,header为空referer(即不带 referer 字段或 referer 字段为空),通常是浏览器直接访问资源地址或者是代码请求才会出现;勾选则将此类情况打入黑/白名单。
Referer举例:
- 配置
www.example.com
:可限制www.example.com/123
、www.example.com.cn
等以www.example.com
为前缀的地址。 - 可配置带端口的域名和IP,例如
www.example.com:8080
、10.10.10.10:8080
等地址。 - 配置
*.example.com
:可限制a.b.example.com/123
、a.example.com
等地址。
# 四、IP黑白名单配置
若您希望对业务资源的访问来源进行控制,通过对用户请求端IP配置访问控制策略,可以有效限制访问来源,阻拦恶意IP盗刷、攻击等问题。
打开IP黑名单配置开关,会自动弹出上述对话框,填写配置信息,确定后即操作完成,配置项说明如下:
- IP黑名单 :用户端IP匹配黑名单中的IP或IP段时,访问CDN节点时将直接返回403状态码。
- IP白名单 :用户端IP未匹配白名单中的IP或IP段时,访问CDN节点时将直接返回403状态码。
- IP :至多可输入
200
个;IP段仅支持/8
、/16
、/24
网段,不支持其他网段;不支持IP:端口
形式。
# 五、IP访问限频配置
若您希望对业务资源的访问来源进行控制,通过对单IP单节点在每一秒钟的访问次数进行限制,可进行高频CC攻击抵御、防恶意用户盗刷等。
打开IP限频配置开关,会自动弹出上述对话框,填写配置信息,确定后即操作完成,配置项说明如下:
- 配置开启后,超出 QPS 限制的请求会直接返回514,设置较低频次限制可能会影响您的正常高频用户的使用,请根据业务情况、使用场景合理设置阈值。
- 限频仅针对与单 IP 单节点访问次数进行约束,若恶意用户海量 IP 针对性的进行全网节点攻击,则通过此功能无法进行有效控制。
举例:
若你的限频配置为 1qps
,则实际访问情况如下:
- 客户端IP为
1.1.1.1
的用户,在一秒内请求了10次资源domain/1.jpg
,均访问至CDN加速节点A中的一台 server,此时在该server上产生10条访问日志,其中有9条因超出QPS限制,状态码为514
。 - 客户端IP为
2.2.2.2
的用户,在一秒内请求了2次资源domain/1.jpg
,受网络影响,可能访问被分别调度至两个 CDN加速节点上进行处理,此时每一个加速节点均会正常返回内容。
# 六、跨域访问配置
打开「跨域访问配置」开关,填入自己的业务域名,保存后该域名即可使用静态资源而没有跨域问题。
注意:当前跨域访问配置解决动态访问静态问题,静态访问动态需在服务端配置开启cors允许跨域在后台代码里实现,