AWS SDK for PHP 버전 3에서 Amazon S3 다중 리전 액세스 포인트 사용 - AWS SDK for PHP

AWS SDK for PHP 버전 3에서 Amazon S3 다중 리전 액세스 포인트 사용

Amazon Simple Storage Service(S3) 다중 리전 액세스 포인트는 Amazon S3 요청 트래픽을 AWS 리전 간에 라우팅하기 위한 글로벌 엔드포인트를 제공합니다.

다중 리전 액세스 포인트는 SDK for PHP, 다른 AWS SDK, S3 콘솔 또는 AWS CLI를 사용하여 생성할 수 있습니다,

중요

SDK for PHP에서 다중 리전 액세스 포인트를 사용하려면 PHP 환경에 AWS 공통 런타임(AWS CRT) 확장이 설치되어 있어야 합니다.

다중 리전 액세스 포인트를 생성하면 Amazon S3에서는 다음 형식의 Amazon 리소스 이름(ARN)을 생성합니다.

arn:aws:s3::account-id:accesspoint/MultiRegionAccessPoint_alias

생성된 ARN을 getObject()putObject() 메서드의 버킷 이름 대신 사용할 수 있습니다.

<?php require './vendor/autoload.php'; use Aws\S3\S3Client; // Assign the Multi-Region Access Point to a variable and use it place of a bucket name. $mrap = 'arn:aws:s3::123456789012:accesspoint/mfzwi23gnjvgw.mrap'; $key = 'my-key'; $s3Client = new S3Client([ 'region' => 'us-east-1' ]); $s3Client->putObject([ 'Bucket' => $mrap, 'Key' => $key, 'Body' => 'Hello World!' ]); $result = $s3Client->getObject([ 'Bucket' => $mrap, 'Key' => $key ]); echo $result['Body'] . "\n"; // Clean up. $result = $s3Client->deleteObject([ 'Bucket' => $mrap, 'Key' => $key ]); $s3Client->waitUntil('ObjectNotExists', ['Bucket' => $mrap, 'Key' => $key]); echo "Object deleted\n";