Laravel не отправит через AWS SES SMTP

Я использую Laravel 5.4.24 и не могу отправить его через SMTP Amazon SES.

Однако, когда я загружаю SwiftMailer и запускаю его отдельно, я могу.

За работой..

require("vendor/autoload.php");

// Create the Transport
$transport = new Swift_SmtpTransport('email-smtp.us-west-2.amazonaws.com', 587, 'tls');
$transport->setUsername('A**************A');
$transport->setPassword('A****************************m');

// Create the Mailer using your created Transport
$mailer = new Swift_Mailer($transport);

// Create a message
$message = new Swift_Message('Wonderful Subject');

$message->setFrom(['noreply@su*****th.com' => 'John Doe']);

$message->setTo(['j*******@gmail.com' => 'Jamie']);

$message->setBody('Here is the message itself');

// Send the message
$result = $mailer->send($message);

Настройка Laravel, которая не работает

MAIL_DRIVER=smtp
MAIL_HOST=email-smtp.us-west-2.amazonaws.com
MAIL_PORT=587
MAIL_USERNAME=A****************A
MAIL_PASSWORD=A************************m
MAIL_ENCRYPTION=tls

Хотя учетные данные идентичны, я получаю

Expected response code 250 but got code "530", with message "530 Authentication required

я пробовал

php artisan queue:restart
php artisan config:cache

Вот как я использую почту в коде

Mail::send('emails.verify', $data, function($message) use ($data)
{
$message->from('noreply@su*****h.com', "Jamie - ****");
$message->subject("Please verify your email address");
$message->to($data['email']);
});

Но без удачи.

Есть идеи?

1

Решение

Ключи SES и регион настраиваются в файле config / services.php.

Так что для меня проблема заключалась в том, что, хотя у меня уже был задан регион по умолчанию us-west-2 в других моих конфигурациях AWS, SES использует свою собственную конфигурацию в файле Services, которая была установлена ​​непосредственно на «us-east-1», а не используя существующие ключи AWS в моем файле .env.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector