我在laravel 6中尝试通过sendgrid发送邮件时遇到此错误:
Failed to authenticate on SMTP server with username "apikey" using 2 possible authenticators. Authenticator LOGIN returned Expected response code 250
my .env:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=587
MAIL_USERNAME=apikey
MAIL_PASSWORD=***** (my key copied from sendgrid)
MAIL_ENCRYPTION=tls
5条答案
按热度按时间neekobn81#
我遇到了同样的问题,我通过在Base64中编码APIKEY来解决它。
这里有更多的帮助:https://sendgrid.com/docs/API_Reference/SMTP_API/getting_started_smtp.html#-Sending-a-test-SMTP-email-with-Telnet
bihw5rsg2#
如果您最近刚刚编辑了.env文件,则更改不会应用于配置。
在php artisan serve上运行时,退出服务器重启,配置会自动更新。
我正在运行xampp server on development,在我的情况下,我需要在控制台中执行以下命令来应用对config的更改:
不需要更改端口,我的.env设置是相同的:
我省略了
MAIL_FROM_ADDRESS
和MAIL_FROM_NAME
,因为我的目的是为了我们公司的网站联系表单,并且我希望邮件发件人和电子邮件是访客或客户电子邮件如果您希望始终从同一封电子邮件发送,请填充这些变量。
这是sendgrid使用Laravel mailables https://sendgrid.com/docs/for-developers/sending-email/laravel/的官方文档
xienkqul3#
花了28个小时解决这个问题后,解决方案是将端口更改为2525,现在它正在工作。您不需要更改或编码base64。
使用以下设置。
6ioyuze24#
在SendGrid上将我的服务器的公共IP地址列入白名单是我所需要的。
uxhixvfz5#
我也遇到了同样的问题,我发现了问题。
Mailgun暂时禁用我的帐户由于挂起每月发票付款。这就是为什么我收到该错误。
因此,您应该检查一次您的邮件服务/帐户状态。