2014-09-13 4 views
1

S3 버킷에서 참조되지 않은 이미지를 정리하고 버전 관리 기능이 켜져 있음을 알았습니다.PHP SDK를 사용하여 Amazon S3에서 버전이있는 파일을 삭제

현재 PHP DSK (버전 '2006-03-01')를 사용하고 있습니다. according to the documentation은 특정 파일의 모든 버전 삭제를 직접 지원하지 않습니다.

내 질문은 이것이다 :

AWS PHP SDK에서 가용 한 방법을 사용하여 S3 버킷에 버전 파일을 삭제에 대해 갈 수있는 올바른 방법은 무엇입니까?

잠재적으로, 나는) listObjectVersions를 (사용하는 생각을 한 후, 각 하나 삭제 실행,하지만 난 일하는 것이 100 %입니다.

도움을 주시면 감사하겠습니다.

답변

2

언급 한대로 모든 개체 버전 목록을 가져와 삭제할 항목을 찾아야합니다. 그런 다음 각 버전을 하나씩 삭제하는 대신 하나의 API 호출을 사용하여 여러 버전을 한 번에 (최대 1000 개까지) 삭제할 수 있습니다.

자세한 내용은 Delete Multiple ObjectsDeleting Multiple Objects Using the AWS SDK for PHP을 참조하십시오.

S3의 결과 일관성 모델로 인해 이상한 결과가 나올 수 있으므로 목록을 & 삭제 (1000 버전 목록 삭제, 1000 목록 제거, 다시 목록 삭제, ... 삭제)하지 마십시오.

+0

응답 해 주셔서 감사합니다. 그게 옳은 소리. 나는 그 장면을 줄 것이고 그것이 작동하는지 알 것이다! – tdlm

관련 문제