我一直在尝试安装邮件在Laravel 7与AWS SES和设置我的所有凭据,并设置我的驱动程序SES。
当试图发送带有默认内置功能的电子邮件验证时,我会收到以下错误。
无法通过主机smtp.mailtrap.io :stream_socket_client()建立连接:无法连接到tcp://smtp.mailtrap.io:2465 (操作超时)
.env
MAIL_DRIVER=ses
MAIL_FROM_ADDRESS=no-reply@taxsion.com
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=HIDDEN
AWS_SECRET_ACCESS_KEY=HIDDEN
AWS_DEFAULT_REGION=us-east-1我已经确保了AWS的密钥和秘密可以完全访问SES,在我的config/services.php中我正在设置它来使用这些凭据。
'ses' => [
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
]我已经搜索了无数的“解决方案”,并尝试为SES创建一个单独的用户,但没有运气。
任何帮助都会很好,谢谢!
发布于 2020-03-07 18:08:17
问题是,由于缓存,我的.env没有被加载。
只需运行php artisan config:clear就可以清除缓存的配置并使用我的新参数更新它。
我的.env包含以下内容:
MAIL_MAILER=ses
MAIL_FROM_ADDRESS=no-reply@domain.com
MAIL_FROM_NAME="${APP_NAME}"发布于 2020-03-07 16:49:46
Laravel 7引入了多邮件驱动程序,它改变了邮件配置的工作方式。
如果您查看您的config/mail.php,您会注意到您有一个MAIL_MAILER值而不是MAIL_DRIVER。您应该能够简单地将MAIL_DRIVER更改为MAIL_MAILER文件中的.env文件:
MAIL_MAILER=ses在进行更改之后,还可能需要清除配置缓存:
php artisan config:clearhttps://stackoverflow.com/questions/60579571
复制相似问题