186
云计算
负载均衡
产品简介
产品价格
快速入门
用户指南
实践操作
常见问题
购买指南
云服务器
产品简介
计费规则
购买指导
控制台使用指南
常见问题
云数据库
产品简介
计费规则
购买指导
快速入门
连接实例
控制台使用指南
对象存储
产品简介
控制台使用指南
程序员百科
Python
天翼云对象存储(经典版)I型API参考-PUT Bucket Lifecycle

产品推荐:

1、安全稳定的云服务器租用,2核/2G/5M仅37元,点击抢购>>>

2、高防物理服务器20核/16G/50M/500G防御仅350元,点击抢购>>>

3、百度智能建站(五合一网站)仅880元/年,点击抢购>>> 模板建站(PC+手机站)仅480元/年,点击抢购>>>

4、阿里云服务器2核2G3M仅99元/年、2核4G5M仅199元/年,新老同享,点击抢购>>> 

5、腾讯云服务器2核2G4M仅99元/年、新老同享,点击抢购>>>   



点击这里注册天翼云特邀VIP帐号,立即体验天翼云对象存储>>>


天翼云对象存储(经典版)I型API参考-PUT Bucket Lifecycle


此操作用来设置Bucket生命周期规则。只有根用户和具有PUT Bucket Lifecycle权限的子用户才能执行此操作。

生命周期是指对象从更新开始到被删除/转换存储类型的时间。

通过设置存储桶的生命周期规则,可以:

l  删除与生命周期规则匹配的对象。当对象的生命周期到期时,OOS会异步删除它们。生命周期中配置的到期时间和实际删除时间之间可能会有一段延迟。但对象到期被删除后,用户将不需要为到期的对象付费。OOS删除到期对象后,会在Bucket log中记录一条日志,操作项是"OOS.EXPIRE.OBJECT"。

l  将与生命周期规则匹配的对象由标准存储转换为低频访问存储。OOS转换存储类型为低频访问存储后,会在access logs中记录一条日志,操作项是"OOS.TRANSITION_SIA.OBJECT"。

注意

l  如果对象的生命周期规则设置的是到期后删除,对象到期后将被永久删除,无法恢复。

l  如果Bucket内的生命周期规则正在执行时被修改配置,则修改后的配置并不立即生效,需等原生命周期规则执行完成后才能生效。

l  如果Bucket没有配置过生命周期规则,执行该操作将创建新的生命周期规则;如果Bucket已存在生命周期规则,则执行此操作将覆盖原有规则。

l  每个Bucket最多创建1000条生命周期规则。

l  同一Bucket,同一类型(到期删除或者到期转成低频访问存储)的生命周期规则不能存在叠加前缀,例如已创建到期删除对象的生命周期规则的前缀是ABC,则无法再创建前缀为ABCD或AB或A的到期删除对象的生命周期规则。

l  当用户为Bucket设置了生命周期规则,这些规则将同时应用于已有对象和后续新创建的对象。例如,用户今天增加了一个生命周期,指定某些前缀的对象30天后过期,那么OOS将会将满足条件的30天前创建的对象都加入到待删除队列中。

OOS通过将对象的创建时间加上生命周期时间来计算到期时间,并且将时间近似到下一天的GMT零点时间。例如,一个对象于GMT 2016年1月15日10:30创建,生命周期为3天,那么对象的到期时间是GMT 2016年1月19日00:00。当重写一个对象时,OOS将以最后更新时间为准,来重新计算该对象的到期时间。

可以通过GET Object、HEAD Object查询对象的到期时间。


请求语法

PUT /?lifecycle   HTTP/1.1

Host: BucketName.oos-cn.ctyunapi.cn

Date: date

Authorization: signatureValue

Content-MD5: MD5

 

<LifecycleConfiguration>

       <Rule>

              <ID>UniqueIdentifier</ID>

              <Prefix>Prefix</Prefix>

              <Status>LifecycleStatus</Status>

              <Expiration>

                     <Days>NumberOfDays</Days>

              </Expiration>

</Rule>

</LifecycleConfiguration>


请求头

名称

描述

是否必须

Content-MD5

数据的base64编码的128位MD5。此请求头必填,以便校验数据的完整性。



请求参数

名称

描述

是否必须

LifecycleConfiguration

生命周期规则容器,最多包含1000个规则。

类型:容器

子节点:Rule

Rule

配置一条生命周期规则的容器。

类型:容器

子节点:ID、Prefix、Status、Expiration、Transition

父节点:LifecycleConfiguration

ID

规则的唯一标识。

类型:字符串

父节点:Rule

取值:1~255个字符。说明:如果ID不填写,系统会随机生成一个48字节长度的ID。

Prefix

指定使用生命周期规则的对象前缀。只有匹配对象前缀的对象才能被该规则影响,且对于同一Bucket,同一类型的生命周期规则的前缀不可重叠。如果prefix为空,则默认生命周期规则匹配整个存储桶。

类型:字符串

父节点:Rule

取值:0~1024个字符

Status

指定生命周期规则的状态。

类型:字符串

父节点:Rule

取值:

  • Enabled:生命周期规则生效;

  • Disabled:生命周期规则不生效,OOS执行时会忽略该条规则。

Expiration

指定生命周期规则的过期时间容器。

类型:容器

父节点:Rule

子节点:Days或Date

Expiration和Transition至少包含1个

Transition

指定生命周期规则的转换存储类型。

类型:容器

父节点:Rule

子节点:Days或Date、StorageClass

Expiration和Transition至少包含一个

Days

指定生命周期规则在匹配对象创建多少天后生效。

注意:如果过期时间和转换时间同时配置,过期时间需要晚于转换时间。

类型:整型

父节点:Expiration或Transition

取值:大于0的正整数

Days和Date二选一

Date

指定生命周期规则生效日期,OOS对在此日期之前创建的对象执行生命周期规则。在该生效时间,生成时间早于此时间的对象将被认为是过期对象。

日期格式必须为ISO8601格式,并且为UTC的零点。例如:2002-10-11T00:00:00.000Z。

类型:字符串

父节点:Expiration、Transition

Days和Date二选一

StorageClass

指定对象转换的存储类型。

类型:字符串

父节点:Transition

取值:

STANDARD_IA:低频访问存储。

Transition已设置时,必须。


请求示例1

下面的生命周期只包含一个规则,这个规则指定所有以logs/为前缀的对象将在创建后的30天过期。因为生命周期规则的状态是Enabled,OOS会每隔一段时间来评估这个规则,删除过期的对象。

PUT /?lifecycle HTTP/1.1
Host: doc.oos-cn.ctyunapi.cn
Date: Tue, 13 Dec 2011 17:54:50 GMT
Content-MD5: 8dYiLewFWZyGgV2Q5FNI4W==
Authorization: AWS 7799e793ce4624ee7e5a:z6mvnXscCWad60vdmB9xZVVZn46=
Content-Length: 207
<LifecycleConfiguration>
       <Rule>
              <ID>delete-logs-in-30-days-rule</ID>
              <Prefix>logs</Prefix>
              <Status>Enabled</Status>
              <Expiration>
                     <Days>30</Days>
              </Expiration>
       </Rule>
</LifecycleConfiguration>


响应示例1

HTTP/1.1 200OK
x-amz-request-id: 32FE2CEB32F5EE25
Date: Tue, 13 Dec 2011 19:14:41 GMT
Server: CTYUN


请求示例2

指定存储对象在创建10天后转换为低频访问存储,创建20天后删除。

PUT /?lifecycle HTTP/1.1
Host: ctyuntest0625.oos-cn.ctyunapi.cn
Authorization: AWS AKIAIM6KGTNKZKF4ETLA:fWuioDnZ3Cc1cXPWu8x5MEWglLg=
Date: Mon, 29 Jul 2019 05:08:31 GMT
Content-Type: application/xml
Content-MD5: ouPJihB832ZHNLZNyl2Ccw==
Content-Length: 175
 
<LifecycleConfiguration>
    <Rule>
        <Prefix>logs</Prefix>
        <Status>Enabled</Status>
        <Transition>
           <Days>10</Days>
           <StorageClass>STANDARD_IA</StorageClass>
        </Transition>
        <Expiration>
           <Days>20</Days>
        </Expiration>
    </Rule>
</LifecycleConfiguration>


响应示例2

HTTP/1.1 200OK
x-amz-request-id: 32FE2CEB32F5EE35
Date: Mon, 29 Jul 2019 05:10:33 GMT
Server: CTYUN


请求示例3

该示例生命周期包含2个规则,第一个规则指定所有以logs/为前缀的对象将在创建后的30天过期。第二个规则指定所有以documents/为前缀的对象将在创建后的365天过期,但第二个规则的状态是Disabled,即不生效。

PUT /?lifecycle HTTP/1.1
Host: doc.oos-cn.ctyunapi.cn
Date: Tue, 13 Dec 2011 17:54:50 GMT
Content-MD5: 8dYiLewFWZyGgV2Q5FNI4W==
Authorization: AWS 7799e793ce4624ee7e5a:z6mvnXscCWad60vdmB9xZVVZn46=
Content-Length: 413
<LifecycleConfiguration>
    <Rule>
        <ID>delete-logs-rule</ID>
        <Prefix>logs/</Prefix>
        <Status>Enabled</Status>
        <Expiration>
           <Days>30</Days>
        </Expiration>
    </Rule>
    <Rule>
        <ID>delete-documents-rule</ID>
        <Prefix>documents/</Prefix>
        <Status>Disabled</Status>
        <Expiration>
           <Days>365</Days>
        </Expiration>
    </Rule>
</LifecycleConfiguration>

响应示例3

HTTP/1.1 200OK
x-amz-request-id: 32FE2CEB32F5EE25
Date: Tue, 13 Dec 2011 19:14:41 GMT
Server: CTYUN


请求示例4

下面规则指定所有对象将在创建后的3650天被删除。

注意:当指定空的前缀时,规则将对Bucket内的所有对象生效。OOS将会删除满足此规则的所有对象。

PUT /?lifecycle HTTP/1.1
Host: doc.oos-cn.ctyunapi.cn
Date: Tue, 13 Dec 2011 17:54:50 GMT
Content-MD5: 8dYiLewFWZyGgV2Q5FNI4W==
Authorization: AWS 7799e793ce4624ee7e5a:z6mvnXscCWad60vdmB9xZVVZn46=
Content-Length: 226
 
<LifecycleConfiguration>
    <Rule>
        <ID>10 years all objects expire rule </ID>
        <Prefix></Prefix>
        <Status>Enabled</Status>
        <Expiration>
            <Days>3650</Days>
        </Expiration>
    </Rule>
</LifecycleConfiguration>


响应示例4

HTTP/1.1 200OK
x-amz-request-id: BDC4B83DF5096BBE
Date:Tue, 13 Dec 2011 19:14:41 GMT
Server: CTYUN


请求示例5

在设置多个规则时,请注意各规则之间不要互相冲突。比如,下面的生命周期中配置了一个规则,指定所有以documents为前缀的对象在30天后过期。而另一个规则指定所有以documents/2011为前缀的对象在365天过期。在这种情况下,OOS将返回错误信息。

PUT /?lifecycle HTTP/1.1
Host: doc.oos-cn.ctyunapi.cn
Date: Tue, 13 Dec 2011 17:54:50 GMT
Authorization: AWS 7799e793ce4624ee7e5a:z6mvnXscCWad60vdmB9xZVVZn46=
Content-MD5: 8dYiLewFWZyGgV2Q5FNI4W==
Content-Length: 226
 
<LifecycleConfiguration>
    <Rule>
        <ID>111</ID>
        <Prefix>documents</Prefix>
        <Status>Enabled</Status>
        <Expiration>
           <Days>30</Days>
        </Expiration>
    </Rule>
    <Rule>
        <ID>222</ID>
        <Prefix>documents/2011</Prefix>
        <Status>Enabled</Status>
        <Expiration>
           <Days>365</Days>
        </Expiration>
    </Rule>
</LifecycleConfiguration>


这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!