この記事は
ものすごく短い記事です。
AWSの(自分も含めた)初心者は🔗開発者ガイドに概念から優しく、
詳しく教えていますので、非常に参考しています。
今回は、🔗開発者ガイドで教えている
🔗AWS SDK for PHP を使用して Amazon SES から E メールを送信するように、SDKを使っているガイドに環境変数の設定で例を出しているので、
初心者皆様が、こちで混乱しなくて、すぐ前進したらいいなと思って記事を投稿します。
このエラー
The email was not sent. Error message: Error retrieving credentials from the instance profile metadata server. (cURL error 28: Connection timed out after 1001 milliseconds (see http://curl.haxx.se/libcurl/c/libcurl-errors.html))
このエラーをご覧した方は、AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEYの設定にミスがある場合です。
まず、以下の手順でチェックしましょう。
①そのIAMのユーザーがちゃんと権限を持っていますか?
②環境変数の設定をちゃんとしましたか?
で、この記事には②の場合をチェックしようと思もいます。
ガイドの通りではなく、以下のように設定をしてみましょう。
$client = SesClient::factory(array(
'version'=> 'latest',
'region' => REGION,
+ 'credentials' => array(
+ 'key' => '*******************',
+ 'secret' => '********************************'
+ )
));
こうすると、上手く動作すると思います。
ほぼご存知でいらっしゃると思いますが、
export AWS_ACCESS_KEY_ID=***************
のexport
を忘れてしまうと、そのCL以外は使えません。
で、bashでShell変数を環境環境化が必要です。
それがexport
を付けることでございます。
env | grep AWS_SECRET_ACCESS_KEY
で一回確認して見る習慣が必要かもしれません。
ちなみに、キーは重要なものなので、テストが終わったらunset
環境変数 してすぐ外しましょう。
以上です。