【发布时间】:2018-09-23 04:31:13
【问题描述】:
我查看了这里的每个答案,似乎我的问题有点不同,或者没有合适的解决方案。我在我的 PHP 文件中执行以下操作:
use Aws\Route53\Route53Client;
$client = Route53Client::factory(array(
'profile' => 'default',
'region' => 'us-east-1',
'version' => '2013-04-01'
));
收到此错误:
Fatal error: Uncaught Aws\Exception\CredentialsException: Cannot read credentials from /.aws/credentials
似乎简单的解决方法是确保 HOME 目录是正确的。确实已经是了。文件是可读的,我的 ec2-user 已经是所有者。密钥和秘密已安装在“凭据”文件中。配置文件名称已设置为“默认”。尝试将 /.aws 复制到其他目录,例如 root、/home 等,并更改了权限、chmod 等。还是什么都没有。
然后我尝试对凭据进行硬编码(我知道——不推荐)只是为了给它一点刺激,它完全忽略了我这样做:
$client = Route53Client::factory(array(
'profile' => 'default',
'region' => 'us-east-1',
'version' => '2013-04-01',
'credentials' => [
'key' => $key,
'secret' => $secret,
]
));
作为最后的手段,我什至尝试包含 CredentialProvider 类,并将其传递到我的数组中——仍然没有:
'credentials' => CredentialProvider::ini('default', '/home/ec2-user/.aws/credentials'),
我到底做错了什么?
【问题讨论】:
标签: php amazon-web-services aws-sdk amazon-route53