OBS提供HTML5协议中的CORS设置,帮助用户实现跨域访问。
前提条件
已经配置了静态网站托管。
操作步骤
步骤 1 在桶列表单击待操作的桶,进入“对象”页面。
步骤 2 在左侧导航栏,单击“概览”,进入“概览”页面。
步骤 3 在桶概览信息展示区域“基础配置”下,单击“CORS规则”卡片,系统跳转至“CORS规则”界面。或您可以直接在左侧导航栏单击“访问权限控制>CORS规则”,进入“CORS规则”界面。
步骤 4 单击“创建”,系统弹出“创建CORS规则”对话框,如下图所示。
说明一个桶最多可设置100条CORS规则。
步骤 5 在“CORS规则”中配置“允许的来源”、“允许的方法”、“允许的头域”、“补充头域”和“缓存时间”。
参数 | 说明 |
---|---|
允许的来源 | 必选参数,指定允许的跨域请求的来源,即允许来自该域名下的请求访问该桶。允许多条匹配规则,以回车换行为间隔。每个匹配规则允许使用最多一个“*”通配符。 例如:http://rds.example.com http://*.vbs.example.com |
允许的方法 | 必选参数,指定允许的跨域请求方法,即桶和对象的几种操作类型。包括:Get、Post、Put、Delete、Head。 |
允许的头域 | 可选参数,指定允许的跨域请求的头域。只有匹配上允许的头域中的配置,才被视为是合法的CORS请求。允许的头域可设置多个,多个头域之间换行隔开,每行最多可填写一个*符号,不支持&、:、<、空格以及中文字符。 |
补充头域 | 可选参数,指CORS响应中带的补充头域,给客户端提供额外的信息。默认情况下浏览器只能访问以下头域:Content-Length、Content-Type,如果需要访问其他头域,需要在补充头域中配置。补充头域可设置多个,多个头域之间换行隔开,不支持*、&、:、<、空格以及中文字符。 |
缓存时间 | 必选参数,请求来源的客户端可以缓存的CORS响应时间,以秒为单位,默认为100秒。 |
步骤 6 单击“确定”。
“CORS规则”页签显示“创建CORS规则成功”提示创建桶的CORS配置成功。CORS配置会在两分钟内生效。
CORS配置成功后,便仅允许跨域请求来源的地址通过允许的方法访问OBS的桶。例如:为桶“testbucket”允许的来源配置为“https://www.example.com”,允许的方法配置为“GET”,允许的头域和补充的头域配置为“*”,缓存时间设置为“100”,则OBS仅允许来源为“https://www.example.com”的“GET”请求访问桶“testbucket”,且不限制该请求的头域,请求来源的客户端可缓存的该CORS请求的响应时间为100秒。
复制CORS规则
步骤 1 在桶列表单击待操作的桶,进入“对象”页面。
步骤 2 在左侧导航栏,单击“概览”,进入“概览”页面。
步骤 3 在桶概览信息展示区域“基础配置”下,单击“CORS规则”卡片,系统跳转至“CORS规则”界面。
或您可以直接在左侧导航栏单击“访问权限控制>CORS规则”,进入“CORS规则”界面。
步骤 4 单击“复制”。
步骤 5 选择复制源,即CORS规则所在的源桶。
说明
从源桶复制CORS规则的操作为增量复制,不会删除当前桶已存在的CORS规则,与已存在的CORS规则冲突的规则不会复制。
源桶和目标桶的桶版本号都必须是3.0。
您可以按需移除不需要复制的CORS规则。
单桶CORS规则上限为100条,如果已有规则+复制规则的数量超过上限,将会复制失败,请先删除多余规则再进行复制。
步骤 6 单击“确定”,将源桶的CORS规则复制到当前桶。