gpt4 book ai didi

php - Amazon S3 删除标记

转载 作者:行者123 更新时间:2023-12-01 16:02:43 25 4
gpt4 key购买 nike

我为 Amazon S3 中的某些文件设置了 Web 存储。我正在使用它的 PHP SDK 来管理这些文件。我有一个自动化脚本运行以在一段时间后从某个存储桶中删除文件。我刚刚意识到我不相信它实际上是在删除文件,而是用删除标记替换它们。当我使用传输 (Mac) 之类的程序查看存储桶时,它会列出自 2013 年我设置脚本以来的所有文件。但是,如果我在浏览器中进入管理界面,它只会列出我在脚本中设置的截止时间之前的文件。

我的问题是:当我不需要实际保留任何这些文件时,我是否为这些标记的存储支付了更多的钱?以及如何永久删除这些文件?我发现的一切都是,这只是版本化存储桶的问题,但这个特定存储桶没有版本化。根据文档,我需要在删除调用中包含对象的版本 ID 以删除标记,但此时,由于“listObjects”不返回这些信息,我该如何检索该信息。

提前致谢!

编辑:我还应该提到,如果我使用传输来拉下一个“已删除”的文件,该文件仍然会打开并且运行起来就好像它从未被删除过一样。

最佳答案

如果在 Amazon S3 存储桶上启用了版本控制,则对象到现有 key 名称的所有上传都将导致创建该对象的附加版本。之前的版本将保留在 Amazon S3 上。删除一个对象会添加一个 删除标记 ,因此该对象似乎已被删除,但仍可下载以前的版本。

如果 Bucket 启用了版本控制,您可以在控制台中查看对象版本和删除标记:

  • 在 Amazon S3 控制台中访问您的存储桶
  • 寻找 版本 屏幕顶部的按钮。它应该有两个按钮:显示 , 隐藏
  • 选择 显示将显示删除标记和所有先前版本的对象

  • 在一段时间后从 Amazon S3 中删除对象的更简单方法是:
  • 选择您的存储桶
  • 开通 属性
  • 点击生命周期
  • 创 build 置为 的规则永久删除对象创建日期后 n 天
  • 关于php - Amazon S3 删除标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27003695/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com