链接复制成功!
重定向请求
重定向简介
在使用静态网站托管功能时,OBS还支持配置重定向请求,即您可以将特定的请求或所有请求实施重定向。
当网站结构调整、网站地址变化或者网站的扩展名发生变化时,用户使用旧的网站地址(比如收藏夹中的地址)访问网站会访问失败,用户只能得到404页面错误信息。此时网站配置了重定向后,让访问这些域名的用户跳转到设定的页面以避免404错误访问。
重定向典型的应用场景包括:
- 重定向所有请求到另外一个站点。
- 设定特定的重定向规则,对特定的请求实施重定向。
本文将以三种场景介绍重定向的使用:
- 将访问桶的所有请求重定向至其他桶或URL:通过在为桶配置静态网站托管时,托管模式选择“重定向请求”实现。
- 将访问桶中某一类(指定前缀)对象或特定对象的请求重定向至其他对象或URL:通过在为桶配置静态网站托管时,托管模式选择“配置到当前桶”,同时配置“重定向规则”实现。
- 将访问静态网站默认首页的请求重定向至同桶中的其他对象或URL:
- 在为桶配置静态网站托管时,托管模式选择“配置到当前桶”,同时默认首页配置为该桶根目录下的静态网页文件名称。
- 为该根目录下的网页文件添加元数据“WebsiteRedirectLocation”。
前提条件
静态网站所需的网页文件已上传到指定桶中。
桶内的静态网站文件必须配置为所有用户可访问。
如果静态网站文件为“归档存储”或“深度归档存储”类别,则需要先恢复,具体操作步骤请参见恢复归档或深度归档存储对象。
将访问桶的所有请求重定向至其他桶或URL
通过在为桶配置静态网站托管时,托管模式选择“重定向请求”,实现将访问桶的所有请求重定向至其他桶或URL。
OBS支持通过管理控制台、API、SDK方式实现该配置,不支持通过OBS Browser+、obsutil方式实现该配置。
使用OBS控制台
- 在OBS管理控制台左侧导航栏选择“桶列表”。
- 在桶列表中,单击待操作的桶,进入“对象”页面。
- 在左侧导航栏单击“数据管理 > 静态网站托管”,进入“静态网站托管”界面。
- 单击“配置静态网站托管”,系统弹出“配置静态网站托管”对话框。
- 打开“状态”开关。
- “托管模式”选择“重定向请求”,如图1所示。在“重定向页面”中输入桶访问域名或URL。
- 输入其他桶的访问域名,表示将对该桶的所有访问请求重定向至其他桶。桶概览页面的“域名信息”区域展示的“访问域名”即为桶的访问域名,详情请参见查看桶信息。
- 输入URL,表示将对该桶的所有访问请求重定向至其他网页。例如,重定向至某网站的根域名“example.com”,则输入“example.com”。
- 单击“确定”。
- (可选)如果配置重定向至其他桶,则需要为重定向桶配置桶策略,使得桶内静态网站文件可以被任何用户访问。如果您已配置,请跳过此步骤。
- 在桶列表中找到重定向的桶,单击桶名称,进入对象列表页面。
- 在左侧功能列表单击“权限控制 > 桶策略”。
- 单击“创建”。
- 配置桶策略信息。
本步骤仅针对所需的关键参数进行设置和介绍,其他参数保持默认。如需了解更多详细信息,请参见对所有账号授予指定对象的读权限。
图2 配置对象只读权限
表1 桶策略参数说明 参数
示例
说明
策略配置方式
可视化视图
选择策略配置的方式,支持可视化视图和JSON视图。
- 可视化视图:采用可视化界面配置,操作简单。
- JSON视图:代码模式配置,采用JSON语法格式进行配置。JSON视图的说明请参见自定义创建桶策略(JSON视图)
策略名称
policy-bucket
输入自定义桶策略的名称。根据需要设置简单易于记忆的名称。
效力
允许
被授权用户在特定条件下对授权资源进行特定的操作,可选择“允许”或“拒绝”该操作。
被授权用户
所有账号
选择可访问桶的用户。
可以设置一个或多个普通账号或委托账号,普通账号和委托账号至少填写一种。
- 所有账号:表示任何用户可以不通过身份认证即可执行当前桶策略,可能导致您的数据存在安全风险。
- 当前账号:授权当前账号下的单个或多个IAM用户访问桶。
- 其他账号:授权其他账号或其下的IAM用户访问桶。
填写账号ID、IAM用户ID或名称。可授权给多个账号,单击下方的“添加其他账号”即可添加。“*”表示所有账号或所有IAM用户。
- 授权给所有账号及IAM用户:“其他账号ID”填写“*”,“IAM用户ID或名称”填写“*”;
- 授权给某个账号及账号下所有IAM用户:“其他账号ID”填写被授权账号的账号ID,“IAM用户ID或名称”填写“*”;
- 授权给某个账号下的某个IAM用户:“其他账号ID”填写被授权账号的账号ID,“IAM用户ID或名称”填写被授权账号下的IAM用户ID。
- 委托账号:授权被委托账号访问桶。
输入委托方账号ID(创建委托的账号ID)和委托名称。
例如:账号A创建了委托Agency-A-to-B,授权账号B可以操作其账号下的资源,则此处“委托方账号ID”填写账号A的ID,委托名称填写“Agency-A-to-B”。
查询账号ID、IAM用户ID、委托方账号ID和委托名称,请参见获取账号、IAM用户、项目、用户组、区域、委托的名称和ID。
授权资源
指定对象
对象名称:*
选择桶策略作用的资源。
- 整个桶(包括桶内对象):桶策略作用于整个桶及桶中的所有对象。
- 当前桶:桶策略作用于当前桶,不包含桶内对象。
- 指定对象:桶策略作用于当前桶中的指定对象。此处对象名称输入*,表示桶策略对桶内所有对象生效。
- 支持匹配完整对象名称,如:“abc.txt”,表示桶内名称为“abc.txt”的对象。
- 支持匹配对象名称前/后缀,如:“a*”和“*c”,分别表示桶内前缀为“a”的对象和后缀为“c”的对象。
- 支持匹配文件夹中的对象,如“testdir/*”、“testdir/a*”、“testdir/*c”,分别表示桶内testdir文件夹下的所有对象、testdir文件夹下前缀为“a”的对象、testdir文件夹下后缀为“c”的对象。
授权操作
模板配置 > 对象只读
选择桶策略对桶中对象生效的操作。
- 模板配置:使用OBS内置的模板配置授权操作。
- 对象只读:支持以下操作
- GetObject:获取对象内容,获取对象元数据。
- GetObjectVersion:获取指定版本对象内容,获取指定版本对象元数据。
- GetObjectVersionAcl:获取指定版本对象ACL。
- GetObjectAcl:获取对象ACL的相关信息。
- RestoreObject:恢复归档存储对象。
- 对象读写:支持以下操作
- PutObject:用于PUT上传,POST上传,追加写对象,初始化上传段任务,上传段,合并段,修改写对象,截断对象,重命名对象。
- GetObject:获取对象内容,获取对象元数据。
- GetObjectVersion:获取指定版本对象内容,获取指定版本对象元数据。
- ModifyObjectMetaData:修改对象元数据。
- ListMultipartUploadParts:列举已上传段。
- AbortMultipartUpload:取消多段上传任务。
- GetObjectVersionAcl:获取指定版本对象ACL。
- GetObjectAcl:获取对象ACL的相关信息。
- PutObjectAcl:设置对象ACL。
- RestoreObject:恢复归档存储对象。
- 对象只读:支持以下操作
- 自定义配置:自定义配置桶策略对桶中对象生效的操作。详情请参见对象相关授权项。
- 单击“创建”。
- 验证:在浏览器输入当前桶的访问域名,结果显示为重定向的桶或重定向的URL。
由于浏览器缓存等原因,您可能需要清除浏览器缓存后才能查看到预期效果。
使用API
将访问桶中某一类(指定前缀)对象或特定对象的请求重定向至其他对象或URL
通过在为桶配置静态网站托管时,托管模式选择“配置到当前桶”,同时配置“重定向规则”,实现将访问桶中某一类(指定前缀)对象或特定对象的请求重定向至其他对象或URL。
OBS支持通过管理控制台、API、SDK方式实现该配置,不支持通过OBS Browser+、obsutil方式实现该配置。
使用OBS控制台
- (可选)如果还未将桶内静态网站文件配置为任何用户可访问,则需要为桶配置桶策略,使得桶内静态网站文件可以被任何用户访问。如果您已配置,请跳过此步骤。
- 在桶列表中找到重定向的桶,单击桶名称,进入对象列表页面。
- 在左侧功能列表单击“权限控制 > 桶策略”。
- 单击“创建”。
- 配置桶策略信息。
本步骤仅针对所需的关键参数进行设置和介绍,其他参数保持默认。如需了解更多详细信息,请参见对所有账号授予指定对象的读权限。
图3 配置对象只读权限
表2 桶策略参数说明 参数
示例
说明
策略配置方式
可视化视图
选择策略配置的方式,支持可视化视图和JSON视图。
- 可视化视图:采用可视化界面配置,操作简单。
- JSON视图:代码模式配置,采用JSON语法格式进行配置。JSON视图的说明请参见自定义创建桶策略(JSON视图)
策略名称
policy-bucket
输入自定义桶策略的名称。根据需要设置简单易于记忆的名称。
效力
允许
被授权用户在特定条件下对授权资源进行特定的操作,可选择“允许”或“拒绝”该操作。
被授权用户
所有账号
选择可访问桶的用户。
可以设置一个或多个普通账号或委托账号,普通账号和委托账号至少填写一种。
- 所有账号:表示任何用户可以不通过身份认证即可执行当前桶策略,可能导致您的数据存在安全风险。
- 当前账号:授权当前账号下的单个或多个IAM用户访问桶。
- 其他账号:授权其他账号或其下的IAM用户访问桶。
填写账号ID、IAM用户ID或名称。可授权给多个账号,单击下方的“添加其他账号”即可添加。“*”表示所有账号或所有IAM用户。
- 授权给所有账号及IAM用户:“其他账号ID”填写“*”,“IAM用户ID或名称”填写“*”;
- 授权给某个账号及账号下所有IAM用户:“其他账号ID”填写被授权账号的账号ID,“IAM用户ID或名称”填写“*”;
- 授权给某个账号下的某个IAM用户:“其他账号ID”填写被授权账号的账号ID,“IAM用户ID或名称”填写被授权账号下的IAM用户ID。
- 委托账号:授权被委托账号访问桶。
输入委托方账号ID(创建委托的账号ID)和委托名称。
例如:账号A创建了委托Agency-A-to-B,授权账号B可以操作其账号下的资源,则此处“委托方账号ID”填写账号A的ID,委托名称填写“Agency-A-to-B”。
查询账号ID、IAM用户ID、委托方账号ID和委托名称,请参见获取账号、IAM用户、项目、用户组、区域、委托的名称和ID。
授权资源
指定对象
对象名称:*
选择桶策略作用的资源。
- 整个桶(包括桶内对象):桶策略作用于整个桶及桶中的所有对象。
- 当前桶:桶策略作用于当前桶,不包含桶内对象。
- 指定对象:桶策略作用于当前桶中的指定对象。此处对象名称输入*,表示桶策略对桶内所有对象生效。
- 支持匹配完整对象名称,如:“abc.txt”,表示桶内名称为“abc.txt”的对象。
- 支持匹配对象名称前/后缀,如:“a*”和“*c”,分别表示桶内前缀为“a”的对象和后缀为“c”的对象。
- 支持匹配文件夹中的对象,如“testdir/*”、“testdir/a*”、“testdir/*c”,分别表示桶内testdir文件夹下的所有对象、testdir文件夹下前缀为“a”的对象、testdir文件夹下后缀为“c”的对象。
授权操作
模板配置 > 对象只读
选择桶策略对桶中对象生效的操作。
- 模板配置:使用OBS内置的模板配置授权操作。
- 对象只读:支持以下操作
- GetObject:获取对象内容,获取对象元数据。
- GetObjectVersion:获取指定版本对象内容,获取指定版本对象元数据。
- GetObjectVersionAcl:获取指定版本对象ACL。
- GetObjectAcl:获取对象ACL的相关信息。
- RestoreObject:恢复归档存储对象。
- 对象读写:支持以下操作
- PutObject:用于PUT上传,POST上传,追加写对象,初始化上传段任务,上传段,合并段,修改写对象,截断对象,重命名对象。
- GetObject:获取对象内容,获取对象元数据。
- GetObjectVersion:获取指定版本对象内容,获取指定版本对象元数据。
- ModifyObjectMetaData:修改对象元数据。
- ListMultipartUploadParts:列举已上传段。
- AbortMultipartUpload:取消多段上传任务。
- GetObjectVersionAcl:获取指定版本对象ACL。
- GetObjectAcl:获取对象ACL的相关信息。
- PutObjectAcl:设置对象ACL。
- RestoreObject:恢复归档存储对象。
- 对象只读:支持以下操作
- 自定义配置:自定义配置桶策略对桶中对象生效的操作。详情请参见对象相关授权项。
- 单击“创建”。
- 在左侧导航栏单击“数据管理 > 静态网站托管”,进入“静态网站托管”界面。
- 单击“配置静态网站托管”,系统弹出“配置静态网站托管”对话框。
- 打开“状态”开关,配置相关参数。
本步骤仅针对所需的关键参数进行设置和介绍,其他参数保持默认。如需配置更多参数,请参见配置静态网站托管。
图4 配置静态网站托管
表3 托管模式选择“配置到当前桶” 参数
示例
说明
状态
开启
选择是否启用静态网站托管配置。
托管模式
配置到当前桶
选择“配置到当前桶”。
重定向规则
参见“重定向规则示例”
在“重定向规则”中配置重定向规则,用于将访问桶中某一类(指定前缀)对象或特定对象的请求重定向至其他页面或URL。
“重定向规则”采用JSON格式编写,可以包含多条重定向规则,每条重定向规则包含一个Condition和一个Redirect,参数说明如表4所示。
表4 重定向参数说明 容器
键值
键值说明
Condition
KeyPrefixEquals
可选项,重定向生效时的对象名前缀。当向对象发送请求时,如果对象名前缀等于这个值,那么重定向生效。
例如:将访问ExamplePage.html对象的所有请求设置重定向至其他页面或主机,则KeyPrefixEquals设为ExamplePage.html。
HttpErrorCodeReturnedEquals
可选项,重定向生效时的HTTP错误码。当发生错误时,如果错误码等于这个值,那么重定向生效。
例如:当返回的HTTP错误码为404时,重定向到NotFound.html,则可以将Condition中的HttpErrorCodeReturnedEquals设置为404,Redirect中的ReplaceKeyWith设置为NotFound.html。
Redirect
Protocol
重定向请求生效时使用的协议。取值为http或https,如不设置,默认为http。
HostName
重定向请求生效时使用的主机名,即将请求重定向至此处设置的主机名。如不设置,代表重定向至原请求的HostName。
ReplaceKeyPrefixWith
将请求重定向至符合此处设置的对象名前缀的对象,即访问KeyPrefixEquals对象的请求将被重定向至ReplaceKeyPrefixWith的对象。
ReplaceKeyPrefixWith与ReplaceKeyWith互斥,只能二选一。
例如:将所有对docs目录下的对象的请求重定向至documents目录下的对象,可以将Condition中的KeyPrefixEquals设置为docs,Redirect中的ReplaceKeyPrefixWith设置为documents。那么访问对象名称为“docs/a.html”的对象,将被重定向至“documents/a.html”对象。
ReplaceKeyWith
将请求重定向至符合此处设置的对象,即访问KeyPrefixEquals对象的请求将被重定向至ReplaceKeyWith的对象。
ReplaceKeyWith与ReplaceKeyPrefixWith互斥,只能二选一。
例如:将所有对docs目录下的对象的请求重定向至“documents/error.html”对象,可以将Condition中的KeyPrefixEquals设置为docs,Redirect中的ReplaceKeyWith设置为“documents/error.html”。那么访问对象名称为“docs/a.html”和“docs/b.html”的对象,将被重定向至“documents/error.html”对象。
HttpRedirectCode
响应中的HTTP状态码。默认值为301,表示永久重定向到Redirect指定的位置,也可根据业务实际情况设置。
重定向规则示例
- 示例一:对所有前缀为“folder1/”对象的请求,自动重定向至主机“www.example.com”上前缀为“target.html”的页面,并使用https协议。
[ { "Condition": { "KeyPrefixEquals": "folder1/" }, "Redirect":{ "Protocol": "https", "HostName": "www.example.com", "ReplaceKeyPrefixWith": "target.html" } } ] - 示例二:对所有前缀为“folder2/”对象的请求,自动重定向至本OBS桶中前缀为“folder/”的对象上。
[ { "Condition": { "KeyPrefixEquals": "folder2/" }, "Redirect":{ "ReplaceKeyPrefixWith": "folder/" } } ] - 示例三:对所有前缀为“folder.html”对象的请求,自动重定向至本OBS桶的“folderdeleted.html”对象上。
[ { "Condition": { "KeyPrefixEquals": "folder.html" }, "Redirect":{ "ReplaceKeyWith": "folderdeleted.html" } } ] - 示例四:在未找到请求对象返回HTTP状态码404时,自动重定向至主机“www.example.com”上前缀为“report-404/” 的页面。
- 示例一:对所有前缀为“folder1/”对象的请求,自动重定向至主机“www.example.com”上前缀为“target.html”的页面,并使用https协议。
- 单击“确定”。
- 验证:在浏览器输入配置的重定向规则中被重定向的对象的访问域名,结果显示为重定向的对象或重定向的URL。
由于浏览器缓存等原因,您可能需要清除浏览器缓存后才能查看到预期效果。
使用API
将访问静态网站默认首页的请求重定向至同桶中的其他对象或URL
在为桶配置静态网站托管时,托管模式选择“配置到当前桶”,同时默认首页配置为该桶根目录下的静态网页文件名称,然后为该根目录下的网页文件添加元数据“WebsiteRedirectLocation”,实现将访问静态网站默认首页的请求重定向至同桶中的其他对象或URL。
OBS支持通过管理控制台、API、SDK方式实现该配置,不支持通过OBS Browser+、obsutil方式实现该配置。
使用OBS控制台
步骤一:配置静态网站托管
在为桶配置静态网站托管时,托管模式选择“配置到当前桶”,同时默认首页配置为该桶根目录下的静态网页文件名称。
- (可选)如果还未将桶内静态网站文件配置为任何用户可访问,则需要为桶配置桶策略,使得桶内静态网站文件可以被任何用户访问。如果您已配置,请跳过此步骤。
- 在桶列表中找到重定向的桶,单击桶名称,进入对象列表页面。
- 在左侧功能列表单击“权限控制 > 桶策略”。
- 单击“创建”。
- 配置桶策略信息。
本步骤仅针对所需的关键参数进行设置和介绍,其他参数保持默认。如需了解更多详细信息,请参见对所有账号授予指定对象的读权限。
图5 配置对象只读权限
表5 桶策略参数说明 参数
示例
说明
策略配置方式
可视化视图
选择策略配置的方式,支持可视化视图和JSON视图。
- 可视化视图:采用可视化界面配置,操作简单。
- JSON视图:代码模式配置,采用JSON语法格式进行配置。JSON视图的说明请参见自定义创建桶策略(JSON视图)
策略名称
policy-bucket
输入自定义桶策略的名称。根据需要设置简单易于记忆的名称。
效力
允许
被授权用户在特定条件下对授权资源进行特定的操作,可选择“允许”或“拒绝”该操作。
被授权用户
所有账号
选择可访问桶的用户。
可以设置一个或多个普通账号或委托账号,普通账号和委托账号至少填写一种。
- 所有账号:表示任何用户可以不通过身份认证即可执行当前桶策略,可能导致您的数据存在安全风险。
- 当前账号:授权当前账号下的单个或多个IAM用户访问桶。
- 其他账号:授权其他账号或其下的IAM用户访问桶。
填写账号ID、IAM用户ID或名称。可授权给多个账号,单击下方的“添加其他账号”即可添加。“*”表示所有账号或所有IAM用户。
- 授权给所有账号及IAM用户:“其他账号ID”填写“*”,“IAM用户ID或名称”填写“*”;
- 授权给某个账号及账号下所有IAM用户:“其他账号ID”填写被授权账号的账号ID,“IAM用户ID或名称”填写“*”;
- 授权给某个账号下的某个IAM用户:“其他账号ID”填写被授权账号的账号ID,“IAM用户ID或名称”填写被授权账号下的IAM用户ID。
- 委托账号:授权被委托账号访问桶。
输入委托方账号ID(创建委托的账号ID)和委托名称。
例如:账号A创建了委托Agency-A-to-B,授权账号B可以操作其账号下的资源,则此处“委托方账号ID”填写账号A的ID,委托名称填写“Agency-A-to-B”。
查询账号ID、IAM用户ID、委托方账号ID和委托名称,请参见获取账号、IAM用户、项目、用户组、区域、委托的名称和ID。
授权资源
指定对象
对象名称:*
选择桶策略作用的资源。
- 整个桶(包括桶内对象):桶策略作用于整个桶及桶中的所有对象。
- 当前桶:桶策略作用于当前桶,不包含桶内对象。
- 指定对象:桶策略作用于当前桶中的指定对象。此处对象名称输入*,表示桶策略对桶内所有对象生效。
- 支持匹配完整对象名称,如:“abc.txt”,表示桶内名称为“abc.txt”的对象。
- 支持匹配对象名称前/后缀,如:“a*”和“*c”,分别表示桶内前缀为“a”的对象和后缀为“c”的对象。
- 支持匹配文件夹中的对象,如“testdir/*”、“testdir/a*”、“testdir/*c”,分别表示桶内testdir文件夹下的所有对象、testdir文件夹下前缀为“a”的对象、testdir文件夹下后缀为“c”的对象。
授权操作
模板配置 > 对象只读
选择桶策略对桶中对象生效的操作。
- 模板配置:使用OBS内置的模板配置授权操作。
- 对象只读:支持以下操作
- GetObject:获取对象内容,获取对象元数据。
- GetObjectVersion:获取指定版本对象内容,获取指定版本对象元数据。
- GetObjectVersionAcl:获取指定版本对象ACL。
- GetObjectAcl:获取对象ACL的相关信息。
- RestoreObject:恢复归档存储对象。
- 对象读写:支持以下操作
- PutObject:用于PUT上传,POST上传,追加写对象,初始化上传段任务,上传段,合并段,修改写对象,截断对象,重命名对象。
- GetObject:获取对象内容,获取对象元数据。
- GetObjectVersion:获取指定版本对象内容,获取指定版本对象元数据。
- ModifyObjectMetaData:修改对象元数据。
- ListMultipartUploadParts:列举已上传段。
- AbortMultipartUpload:取消多段上传任务。
- GetObjectVersionAcl:获取指定版本对象ACL。
- GetObjectAcl:获取对象ACL的相关信息。
- PutObjectAcl:设置对象ACL。
- RestoreObject:恢复归档存储对象。
- 对象只读:支持以下操作
- 自定义配置:自定义配置桶策略对桶中对象生效的操作。详情请参见对象相关授权项。
- 单击“创建”。
- 在左侧导航栏单击“数据管理 > 静态网站托管”,进入“静态网站托管”界面。
- 单击“配置静态网站托管”,系统弹出“配置静态网站托管”对话框。
- 打开“状态”开关,配置相关参数。
本步骤仅针对所需的关键参数进行设置和介绍,其他参数保持默认。如需配置更多参数,请参见配置静态网站托管。
图6 配置静态网站托管
表6 托管模式选择“配置到当前桶” 参数
示例
说明
状态
开启
选择是否启用静态网站托管配置。
托管模式
配置到当前桶
选择“配置到当前桶”。
默认首页
index.html
- 默认首页:即访问静态网站时的默认首页。当使用OBS管理控制台配置静态网站托管时,仅支持桶根目录下的“html”格式的网页文件;当使用API的方式配置时,OBS不进行限制,用户必须指定对象的“Content-Type”。
OBS仅支持配置桶根目录下的文件(如“index.html”)作为默认首页,暂不支持按目录层级的方式(如“/page/index.html”)配置默认首页。
- 默认首页:即访问静态网站时的默认首页。当使用OBS管理控制台配置静态网站托管时,仅支持桶根目录下的“html”格式的网页文件;当使用API的方式配置时,OBS不进行限制,用户必须指定对象的“Content-Type”。
- 单击“确定”。
步骤二:为配置的默认首页对象添加元数据
在为桶配置静态网站托管时,配置了默认首页(桶根目录下的网页文件)后,还需要为该根目录下的网页文件添加元数据“WebsiteRedirectLocation”。
- 在桶列表中,单击待操作的桶,进入“对象”页面。
- 单击待操作的对象名称,进入对象基本信息页面。
- 切换至“元数据”页签,单击“增加”,根据需要填写元数据信息。
本步骤仅针对所需的关键元数据进行设置和介绍,如需了解更多对象元数据,请参考元数据介绍。
图7 增加元数据
表7 OBS的元数据 名称
说明
用户是否可修改该值
WebsiteRedirectLocation
为对象提供重定向功能,重定向到其他对象或者外部的URL。当对象被配置为重定向时,请求该对象,返回的响应头中会包含WebsiteRedirectLocation(用来告诉客户端应该重定向到其他URL页面)。重定向功能通过静态网站托管实现。
格式为:WebsiteRedirectLocation: <url>,其中“<url>”为重定向的目标URL。
OBS仅支持为桶根目录下的对象设置重定向,不支持为桶中文件夹下的对象设置重定向。
例如,可根据如下步骤实现对象重定向功能。
- 为桶“testbucket”根目录下的对象“testobject.html”设置元数据,元数据名称选择为“WebsiteRedirectLocation”,元数据值填写为“http://www.example.com”
- 在桶“testbucket”中配置静态网站托管,将该桶中的对象“testobject.html”设置为静态网站托管的“默认首页”。
- 当通过静态网站托管页面上的“访问地址”访问对象“testobject.html”时,会直接重定向访问https://www.example.com。
是
- 单击“确定”。
步骤三:验证
在浏览器输入静态网站托管页面的“访问地址”,访问该地址即访问默认首页,将会被重定向,结果显示为默认首页对象配置的元数据“WebsiteRedirectLocation”的值(同桶中的其他对象或URL)。
