У меня настроено хранилище для некоторых файлов в Amazon S3. Я использую его PHP SDK для управления этими файлами. У меня запущен скрипт автоматизации для удаления файлов из определенного сегмента через определенный промежуток времени. Я только что понял, что я не верю, что это на самом деле удаляет файлы, но заменяет их маркером удаления. Когда я использую такую программу, как Transmission (Mac) для просмотра корзины, в ней перечислены все файлы с 2013 года, когда я настраивал скрипт. Но если я перехожу к интерфейсу управления в браузере, он перечисляет файлы только в той степени, в которой я задал сценарий.
Мой вопрос: плачу ли я больше денег за хранение этих маркеров, когда мне не нужно хранить какие-либо из этих файлов? И как мне окончательно удалить эти файлы? Я обнаружил только то, что это проблема только с версионными корзинами, но эта конкретная корзина не имеет версий. Согласно документации, мне нужно включить идентификатор версии объекта в вызов удаления, чтобы удалить маркер, но на этом этапе, как мне получить эту информацию, так как «listObjects» не возвращает их.
Заранее спасибо!
РЕДАКТИРОВАТЬ: я должен также упомянуть, что если я использую Transmission для удаления «удаленного» файла, файл все равно открывается и функционирует так, как если бы он никогда не был удален.
Если в корзине Amazon S3 включено управление версиями, то все загрузки объекта в существующее имя ключа приведут к созданию дополнительной версии объекта. Предыдущие версии будут храниться на Amazon S3. Удаление объекта добавит Удалить маркер, так что объект, кажется, был удален, но предыдущие версии все еще доступны для скачивания.
Если в Bucket включена поддержка версий, вы можете просматривать версии объектов и удалять маркеры в консоли:
Более простой способ удаления объектов из Amazon S3 через определенный промежуток времени:
Других решений пока нет …