Laravel 无法通过发送网格smtp发送邮件。

Laravel 无法通过发送网格smtp发送邮件。,laravel,amazon-ec2,sendgrid,Laravel,Amazon Ec2,Sendgrid,我正在使用sendgrid在laravel中发送邮件。它在我的本地和一个aws ec2实例上运行良好。但它在另一个ec2实例上发送邮件失败。我使用tls加密尝试了所有端口,如2525,252587587。但对我无效。它给出以下错误 无法使用2个可能的身份验证程序在SMTP服务器上使用用户名“apikey”进行身份验证 如果您的问题发生在使用https的服务器上,您应该将MAIL\u驱动程序更改为MAIL,将MAIL\u端口更改为465 MAIL_DRIVER=mail MAIL_HOST=smt

我正在使用sendgrid在laravel中发送邮件。它在我的本地和一个aws ec2实例上运行良好。但它在另一个ec2实例上发送邮件失败。我使用tls加密尝试了所有端口,如2525,252587587。但对我无效。它给出以下错误

无法使用2个可能的身份验证程序在SMTP服务器上使用用户名“apikey”进行身份验证


如果您的问题发生在使用https的服务器上,您应该将
MAIL\u驱动程序更改为MAIL
,将
MAIL\u端口更改为465

MAIL_DRIVER=mail
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=465
MAIL_USERNAME=yourusername
MAIL_PASSWORD=yourpassword
在您的config/mail.php上

'encryption' => env('MAIL_ENCRYPTION', 'tls'),
改为

encryption' => 'ssl',

这是我的工作。

我的端口是587。当我把它改成465时,它起作用了。我不必更改邮件驱动程序。如果您将驱动程序设置为Mail,那么它将使用phpmailer发送,而不是通过SMTP使用SendGrid