由于防盗链异常导致访问CDN返回403错误的解决方法

问题描述

在进行防盗链设置后,访问CDN加速资源,返回403错误。

问题原因

防盗链设置异常或者为空。

解决方案

通过以下操作确认访问CDN加速资源返回403错误的具体原因,根据不同的原因进行相应的处理。

排查问题原因

  • 使用curl命令测试访问CDN加速域名。
    curl -voa -e "http://demo.aliyundoc.com" http://example.aliyundoc.com
    系统显示类似如下,Request请求的HTTP头带有Referer为demo.aliyundoc.com的域名,出现403错误,同时出现具体错误信息为“denied by Referer ACL”,说明是防盗链设置异常。
  • 使用curl命令测试访问CDN加速域名。
    curl -voa http://example.aliyundoc.com
    系统显示类似如下,Request请求的HTTP头没有Referer信息,出现403错误,同时出现具体错误信息为“denied by Referer ACL”,说明是防盗链设置为空。
  • 通过Chrome浏览器打开CDN加速的一个URL链接,打开开发者工具,显示类似如下,Request请求的HTTP头没有Referer信息,说明是防盗链设置为空。

防盗链设置为异常的解决方法

判断Referer为demo.aliyundoc.com的域名与加速域名example.aliyundoc.com设置的防盗链是否匹配。登录CDN控制台,单击对应的加速域名右侧的管理,选择访问控制>Refer防盗链>修改配置,选择白名单,确认防盗链设置和请求Referer不匹配,则添加demo.aliyundoc.com域名即可。

防盗链设置为空的解决方法

登录CDN控制台,单击对应的加速域名管理,选择访问控制>Refer防盗链>修改配置,选择白名单,勾选允许通过浏览器地址栏直接访问资源URL

说明:如将防盗链设置不允许为空Referer访问,这样操作,有被盗链的风险。

适用于

  • CDN