2017-02-23 1 views
0

하나의 S3 버킷 폴더 (크기 150MB - 200MB)를 다른 지역의 다른 S3 버킷에 복사하고 싶습니다. PHP 또는 S3의 용어는하나의 S3 버킷 폴더 (크기 150MB - 200MB)를 다른 지역의 다른 S3 버킷에 복제 PHP

내가 코드를 아래에 노력했다 " 다른 S3 버킷에 다른 접두사로 개체 내로 S3 버킷의 접두어 모든 개체를 복제"하지만 아니에요 동작

$s3 = new S3Client(['credentials' => $credentials, 'version' => 'latest','region' => $region,'debug' => false ]); 
$s3->registerStreamWrapper(); 
$result = $s3->uploadDirectory("s3://{$source_bucket}/{$key}",$target_‌​bucket); 

및 또한 원본 버킷에서 모든 객체 (listObject 함수 사용)를 나열한 다음 복사하려고했습니다 (copyObject 사용). 함수)를 대상 버킷에 추가합니다. 그러나이 과정은 너무 많은 시간을 소비합니다.

어떤 제안

답변

0

: 전에

누군가가 당신의 문제가 있었다.

직접 작성하는 경우 모든 파일을 반복하고 각 객체에 대해 개별 copy 명령을 실행하고 오류 처리를 수행해야합니다. Amazon S3에는 "이 경로에 모든 파일 복사"명령이 없습니다.