本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在第 3 AWS SDK for PHP 版中使用 Amazon S3 多區域存取點
Amazon Simple Storage Service (S3) 多區域存取點提供了一個全球端點,用於在之間AWS 區域路由 Amazon S3 請求流量。
您可以使用 SDK for PHP、其他AWS開發套件、S3 主控台或 AWS CLI 建立多區域存取點,
重要
若要將多區域存取點與 SDK for PHP 搭配使用,您的 PHP 環境必須安裝AWS通用執行階段 (AWSCRT) 延伸模組。
當您建立多區域存取點時,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";