错误预期的响应代码为250,但代码为“ 550”,消息为“ 550,这是仅提交的端口。您必须在发送邮件之前进行身份验证

时间:2019-07-20 10:58:57

标签: laravel centos smtp swiftmailer

我有使用laravel设置的centos服务器。从服务器发送电子邮件时遇到问题。我的laravel版本是5.8.29,PHP版本是7.3.6。我正在使用SMTP发送电子邮件。伙计们请帮帮我。这是我的代码。

说我从系统的本地设置中能够以相同的代码通过当前项目设置发送具有相同SMTP详细信息的电子邮件是非常奇怪的。但是有些邮件在生产服务器上不发送。我已经与swift mailer进行了交叉检查,并使用单独的文件测试了仅电子邮件发送及其工作。但是从实际环境来看是行不通的。

.env文件

MAIL_DRIVER=smtp
MAIL_HOST=mail.domain.com
MAIL_PORT=587
mail_username=username
MAIL_PASSWORD=password
MAIL_ENCRYPTION=tls

电子邮件应从环境文件发送

1 个答案:

答案 0 :(得分:3)

如果您想通过Gmail发送电子邮件,则需要通过两步验证来验证您的Gmail帐户并生成邮件密码。验证帐户后,要验证您的Gmail帐户以引发此链接enter link description here,请转到“安全->应用程序密码”,生成邮件密码。选择应用程序“邮件”,然后选择设备“窗口计算机”,将生成的密码粘贴复制到您的.env文件中

您的.env文件显示如下:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=username
MAIL_PASSWORD=password
MAIL_ENCRYPTION=tls

保存.env文件后,删除项目配置并使用命令缓存

php artisan config:cache
php artisan cache:clear

要通过域发送电子邮件,请点击此链接enter link description here