开启了防盗链功能,但是实际 Request Headers 请求头里的 Referer 头 不符合防盗链规则导致失败,因防盗链问题导致的 403,在 CDN 的 Response headers 里的 X-Tengine-Error 会返回 denied by Referer ACL。防盗链配置 请参考配置文档。
X-Tengine-Error: denied by Referer ACL
Referer 防盗链类型如下:
● 黑名单 : 黑名单内的域名均无法访问当前的资源。
● 白名单 : 只有白名单内的域名能访问当前资源,白名单以外的域名均无法访问 当前的资源。
黑名单和白名单互斥,同一时间只支持其中一种方式生效。 1. 请求头里没有带 referer 头,也就是说该 HTTP 请求是一次空 referer 的请求的。而 CDN 控制台又设置了不允许空 referer,因此该请求会被 403,参考如下案例。 解决方案:如果希望允许空 referer 的请求,可以登录 CDN 控制台,单击对应 的加速域名 管理,选择 访问控制 > Refer 防盗链 > 修改配置,,勾选“允许通过浏 览器地址栏直接访问资源 URL”。 注:如将防盗链设置不允许为空 Referer 访问,这样操作,有被盗链的风险。 2. 设置了防盗链白名单,但是实际请求时,请求头里的 referer 头不在白名单 里。例如如下案例,设置的白名单是 www.test.com,但是实际访问的时 候,请求头里的 referer 头是 dc.xxx.cn,未在白名单里,因此 403。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。