阿里云OSS防盗链设置
如默
撰写于 2021年 04月 27 日

说明

启用阿里云OSS之后遇到了一些问题,记录一下

防盗链设置

进入OSS控制台,选中相应的bucket,权限管理,防盗链设置

默认有两个设置选项:

referer规则一行写一条,支持通配符*,
例如www.124.221.171.144; *.124.221.171.144等 空referer
允许空referer即浏览器地址栏可以直接访问,相反则不允许访问,会提示403 forbidden

以下内容详细介绍如何配置Referer,配置Referer时使用了通配符的具体示例,以及配置Referer后的效果。

配置Referer
  • 单个Bucket支持配置多个Referer。通过控制台设置Referer时,使用回车作为换行符分隔;通过API设置Referer时,使用英文逗号(,)分隔。
  • Referer参数支持通配符星号(*)和问号(?)。
  • 通配符星号*表示使用星号代替0个或多个字符。若Referer白名单配置为*.aliyun.com,且不允许空Referer的情况下,则只有HTTP或HTTPS header中包含Referer字段的请求才能访问OSS资源,例如help.aliyun.comwww.aliyun.com等;若Referer白名单配置为*.aliyun.com,且允许空Referer的情况下,则Referer为空的请求也允许访问OSS资源。
  • 通配符问号?表示使用问号代替一个字符。若Referer白名单配置为aliyun?.com,且不允许空Referer的情况下,则只有HTTP或HTTPS header中包含Referer字段的请求才能访问OSS资源,例如aliyuna.comaliyunb.com等;若Referer白名单配置为aliyun?.com,且允许空Referer的情况下,则Referer为空的请求也允许访问OSS资源。
Referer效果
  • 如果Referer白名单为空,则所有的请求都会被允许。
  • 如果Referer白名单不为空,且不允许Referer字段为空,则只有Referer属于白名单的请求被允许,其他请求(包括Referer为空的请求)会被拒绝。
  • 如果Referer白名单不为空,但允许Referer字段为空,则Referer为空的请求和符合白名单的请求会被允许,其他请求都会被拒绝。

注意

OSS官方文档内写的格式是xxx.com,其中没有协议头,但亲测,必须加上协议头设置才会成功,否则,会全部提示403 forbidden

完整的规则应该是https://cdn.rumosky.com,后经阿里云工程师确认,确实必须加上协议头。
若网站内有空referer请求,建议开启允许空referer,否则会报错

阿里云OSS防盗链设置

温馨提示:

本文最后更新于2021年04月27日,已超过1372天没有更新,若内容或图片失效,请留言反馈。

说明

启用阿里云OSS之后遇到了一些问题,记录一下

防盗链设置

进入OSS控制台,选中相应的bucket,权限管理,防盗链设置

默认有两个设置选项:

referer规则一行写一条,支持通配符*,
例如www.124.221.171.144; *.124.221.171.144等 空referer
允许空referer即浏览器地址栏可以直接访问,相反则不允许访问,会提示403 forbidden

以下内容详细介绍如何配置Referer,配置Referer时使用了通配符的具体示例,以及配置Referer后的效果。

配置Referer
  • 单个Bucket支持配置多个Referer。通过控制台设置Referer时,使用回车作为换行符分隔;通过API设置Referer时,使用英文逗号(,)分隔。
  • Referer参数支持通配符星号(*)和问号(?)。
  • 通配符星号*表示使用星号代替0个或多个字符。若Referer白名单配置为*.aliyun.com,且不允许空Referer的情况下,则只有HTTP或HTTPS header中包含Referer字段的请求才能访问OSS资源,例如help.aliyun.comwww.aliyun.com等;若Referer白名单配置为*.aliyun.com,且允许空Referer的情况下,则Referer为空的请求也允许访问OSS资源。
  • 通配符问号?表示使用问号代替一个字符。若Referer白名单配置为aliyun?.com,且不允许空Referer的情况下,则只有HTTP或HTTPS header中包含Referer字段的请求才能访问OSS资源,例如aliyuna.comaliyunb.com等;若Referer白名单配置为aliyun?.com,且允许空Referer的情况下,则Referer为空的请求也允许访问OSS资源。
Referer效果
  • 如果Referer白名单为空,则所有的请求都会被允许。
  • 如果Referer白名单不为空,且不允许Referer字段为空,则只有Referer属于白名单的请求被允许,其他请求(包括Referer为空的请求)会被拒绝。
  • 如果Referer白名单不为空,但允许Referer字段为空,则Referer为空的请求和符合白名单的请求会被允许,其他请求都会被拒绝。

注意

OSS官方文档内写的格式是xxx.com,其中没有协议头,但亲测,必须加上协议头设置才会成功,否则,会全部提示403 forbidden

完整的规则应该是https://cdn.rumosky.com,后经阿里云工程师确认,确实必须加上协议头。
若网站内有空referer请求,建议开启允许空referer,否则会报错


那年今日
04月
27日
赞 (0)

猜您想看

  • Android Studio报错error:connection timed out

    在构建Android项目的时候,底部的状态栏总是会显示connection timed out或Could not download xxx等问题,这是由于国内网络问题导致第三方依赖下载不上,特此记录其解决办法。

    2019年10月18日
  • 微信小程序使用阿里巴巴矢量图标库方法

    最近在写了一个小程序,原生组件里面的图标很少,而且不好看,这里记录一下如何使用阿里巴巴矢量图标库的方法。

    2023年07月18日
  • Git使用教程

    多人协作开发项目的时候,都是使用GitHub或者GitLab等,新手踩了很多坑,所以做此记录,方便查阅。 Git是目前世界上最先进的分布式版本控制系统(没有之一),更多内容就请自行百度。

    2019年07月24日
  • 迁移Git项目

    之前使用的是GitHub和Gitee,国外的访问速度太慢,国内的又各种限制,所以自己搭建了一个Gitea,用来存放代码,之前的仓库不想丢失log记录等信息,所以需要迁移,特此记录。

    2022年11月29日
  • Android版课程表APP

    Android实践demo

    2019年11月26日
  • 神州数码实习小结

    学校在今年的九月安排实习,实习到十月底,公司是神州数码信息股份有限公司西安分公司,准确的来说应该是神州数码融信股份有限公司,听说是要改名了,不过仍然是DCTIS

    2020年11月02日

评论区(暂无评论)

这里空空如也,快来评论吧~

我要评论

Vaptcha 初始化中...