-solved -
我对使用AWS非常陌生,这绝对是一个新手问题,但我现在已经坚持了一段时间,而且我还没有找到答案。
我正在运行具有附加了AmazonS3FullAccess策略的IAM角色的EC2实例。我试图运行以下PHP代码:
<?php
echo '<br>loaded file<br>';
// SDK downloaded as ZIP file
require_once('SDK/aws-autoloader.php');
echo '<br>loaded sdk<br>';
use Aws\Exception\AwsException;
use Aws\S3\Exception\S3Exception;
// Use the us-east-1 region and latest version of each client.
$SharedConfig =
[
'region' => 'us-east-1',
'version' => 'latest'
];
// Create an SDK class used to share configuration across clients.
$SDK = new Aws\Sdk($SharedConfig);
echo '<br>created sdk object<br>';
// Create an Amazon clients using the shared configuration data.
$S3Client = $SDK->createS3();
echo '<br>created s3 client<br>';
$RDSClient = $SDK->createRds();
echo '<br>created rds client<br>';
$Buckets = $S3Client->listBuckets();
echo '<br>bucket list<br>';
var_dump($Buckets);
echo '<br>end of list<br>';
访问页面输出如下:
loaded file
loaded sdk
created sdk object
created s3 client
created rds client
这意味着&#34; $ Buckets = $ S3Client-&gt; listBuckets();&#34;被执行了。
我想问以下问题:
使用由IAM角色配置的EC2实例运行的PHP脚本调用listBuckets()的正确方法是什么?
假设SDK函数生成错误消息和/或异常,如何查看这些错误消息和/或异常?
提前致谢。