

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 即將到期的物件
<a name="lifecycle-expire-general-considerations"></a>

您可以將轉換動作新增至 S3 生命週期組態，以指示 Amazon S3 在物件的生命週期結束時刪除物件。當物件根據其生命週期組態達到其生命週期終點時，Amazon S3 會根據儲存貯體所處的 [S3 版本控制](Versioning.md)狀態採取 `Expiration` 動作：
+ **非版本控制的儲存貯體** - Amazon S3 會將物件排入佇列等待移除，並會以非同步方式將其移除，這會永久地移除該物件。
+ **已啟用版本控制的儲存貯體** - 如果目前的物件版本不是刪除標記，則 Amazon S3 會新增具有唯一版本 ID 的刪除標記。如此會讓目前的版本成為非目前的版本，而刪除標記成為目前版本。
+ **暫停版本控制的儲存貯體** - Amazon S3 會建立以 null 為版本 ID 的刪除標記。此刪除標記會以 null 版本 ID 取代版本階層中所有的物件版本。這是刪除物件最有效的方法。

對於版本控制的儲存貯體 (亦即，已啟用版本控制或暫停版本控制的儲存貯體)，有數個考量，引導 Amazon S3 如何處理 `Expiration` 動作。對於已啟用版本控制或暫停版本控制的儲存貯體，適用下列情況：
+ 物件過期只適用於物件的目前版本 (其對非目前的物件版本沒有影響)。
+ 當有一或多個物件版本，且刪除標記為目前的版本時，Amazon S3 不會採取任何動作。
+ 若目前的物件版本是唯一的物件版本，同時也是刪除標記 (亦稱為*過期物件刪除標記*，這會刪除所有的物件版本，只留下刪除標記)，Amazon S3 會移除過期物件刪除標記。您也可以使用 `Expiration` 動作，指示 Amazon S3 移除任何過期物件刪除標記。如需範例，請參閱 [移除已啟用版本控制之儲存貯體中的過期物件刪除標記](lifecycle-configuration-examples.md#lifecycle-config-conceptual-ex7)。
+ 您可以使用 `NoncurrentVersionExpiration` 動作元素來指示 Amazon S3 永久刪除非最新版本的物件。這些刪除的物件無法復原。您可以根據物件變成非最新物件之後的特定天數確定此次過期時間。除了天數之外，您也可以提供要保留的非最新版本數目上限 (介於 1 和 100 之間)。此值會指定必須有多少個較新的非目前版本存在，Amazon S3 才可對指定的版本執行相關聯的動作。若要指定非最新版本的數目上限，您也必須提供 `Filter` 元素。如果您未指定 `Filter` 元素，當您提供的非最新版本達到數量上限時，Amazon S3 會產生 `InvalidRequest` 錯誤。如需關於使用 `NoncurrentVersionExpiration` 動作元素的詳細資訊，請參閱[描述生命週期動作的元素](intro-lifecycle-rules.md#intro-lifecycle-rules-actions)。
+ Amazon S3 不會對已套用 S3 物件鎖定組態的非最新版本物件採取任何動作。
+ 對於具有 `Pending`或 `Failed`複寫狀態的物件，Amazon S3 不會對物件的目前或非目前版本採取任何動作。

如需詳細資訊，請參閱[使用 S3 版本控制保留多個版本的物件](Versioning.md)。

**重要**  
在 S3 生命週期組態中出現多項規則時，您可在同一天內對物件套用多個 S3 生命週期動作。在這種情況下，Amazon S3 遵循以下一般規則：  
永久刪除優先於轉換。
轉換優先於建立[刪除標記](DeleteMarker.md)。
當物件同時符合 S3 Glacier Flexible Retrieval 和 S3 Standard-IA (或 S3 One Zone – IA) 轉換的資格時，Amazon S3 會選擇 S3 Glacier Flexible Retrieval 轉換。
 如需範例，請參閱 [篩選條件重疊和生命週期動作相衝突的範例](lifecycle-conflicts.md#lifecycle-config-conceptual-ex5)。

**現有物件和新物件**  
當您新增儲存貯體的生命週期組態時，組態規則會套用至現有物件以及稍後新增的物件。例如，如果您目前所新增生命週期組態規則包含過期動作，會讓具有特定字首的物件在建立 30 天之後過期，則 Amazon S3 會將任何超過 30 天且具有指定字首的現有物件排入佇列，等待移除。

**重要**  
您無法使用儲存貯體政策來防止 S3 生命週期規則的刪除或轉換。例如，即使您的儲存貯體政策拒絕所有主體的所有動作，S3 生命週期組態仍會正常運作。

## 如何找出物件何時過期
<a name="lifecycle-expire-when"></a>

若要尋找目前版本的物件何時會排程過期，請使用 [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html) 或 [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html) API 操作。這些 API 操作會傳回回應標頭，提供不再可快取目前版本物件的日期和時間。

**注意**  
在過期日期及 Amazon S3 移除物件的日期之間，可能會有所延遲。您無須支付與過期物件相關聯的過期或儲存時間費用。
在更新、停用或刪除生命週期規則之前，請使用 `LIST` API 操作 (例如 [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html)、[https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectVersions.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectVersions.html) 和 [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)) 或 [使用 S3 庫存清單編目和分析資料](storage-inventory.md) 確認 Amazon S3 已根據您的使用案例轉換符合資格的物件並使其過期。

## 最低儲存期間費用
<a name="lifecycle-expire-minimum-storage"></a>

如果您建立的 S3 生命週期到期規則導致 S3 標準 – IA 或 S3 單區域 – IA 儲存中的物件在 30 天內過期，您仍要支付 30 天的費用。如果您建立的生命週期到期規則導致 S3 Glacier Flexible Retrieval 儲存中的物件在 90 天內過期，則系統仍會向您收取 90 天的儲存體費用。如果您建立的生命週期到期規則導致 S3 Glacier Deep Archive 儲存中的物件在 180 天內過期，則系統仍會向您收取 180 天的儲存體費用。

如需詳細資訊，請參閱 [Simple Storage Service (Amazon S3) 定價](https://aws.amazon.com/s3/pricing/)。