我正在互联网上搜索如何通过API调用或使用他们的库直接在PHP中获取AWS s3存储桶区域,但运气不好找到该信息。
我有以下可用信息: 帐户凭据,存储桶名称,访问密钥+机密。那是我可以访问的多个存储桶,而且我需要以编程方式获取该区域,因此无法登录到aws控制台并检出。
答案 0 :(得分:1)
假设您在$client
中有一个AWS PHP Client的实例,那么您应该能够使用$client->getBucketLocation()
找到该位置。
这是一些示例代码:
<?php
$result = $client->getBucketLocation([
'Bucket' => 'yourBucket',
]);
结果将如下所示
[
'LocationConstraint' => 'the-region-of-your-bucket',
]
答案 1 :(得分:1)
创建S3客户端时,即使不是您使用的区域,也可以使用AWS中的任何可用区域。
$s3Client = new Aws\S3\S3MultiRegionClient([
'version' => 'latest',
'region' => 'us-east-1',
'credentials' => [
'key' => $accessKey,
'secret' => $secretKey,
],
]);
$region = $s3Client->determineBucketRegion($bucketname);
-拉维·贾亚戈帕尔(Ravi Jayagopal)