You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Swift Mailer通过Gmail SMTP发邮件失败,遇530认证错误

解决Gmail SMTP认证失败(530-5.5.1 Authentication Required)问题

我之前踩过Gmail SMTP的认证坑,结合你的情况,给你几个具体的排查和解决步骤:

1. 确认环境变量里的认证信息是否正确

你的config/mail.php里用的是env()读取配置,所以重点要检查.env文件里的核心认证参数:

MAIL_USERNAME=你的Gmail邮箱地址
MAIL_PASSWORD=你的应用专用密码(不是普通登录密码!)

划重点:如果你的Gmail账号开启了两步验证,必须去Google账号设置里生成一个「应用专用密码」,用这个密码代替普通密码才能通过SMTP认证——普通密码会直接被Gmail的安全机制拒绝。

2. 检查SMTP加密配置

确保你的config/mail.php或.env里配置了正确的加密方式,587端口对应的是TLS:

// config/mail.php中的配置
'encryption' => env('MAIL_ENCRYPTION', 'tls'),

或者直接在.env里明确设置:

MAIL_ENCRYPTION=tls

3. 缓存配置的正确操作

你已经执行了php artisan config:cache,但如果之前的错误配置已经被缓存,可能需要先清理再重新缓存:

php artisan config:clear
php artisan config:cache

开发环境建议暂时不要用config:cache,因为每次修改配置都要重新缓存反而容易出问题,直接用config:clear让配置实时读取更方便调试。

4. 排查Gmail账号的安全设置

如果以上都没问题,去Google账号的「安全」页面确认:

  • 有没有触发Google的新设备登录提示,需要先在邮箱里确认登录请求
  • 若未开启两步验证,可以尝试临时开启「不太安全的应用访问」(不过更推荐用应用专用密码,安全性更高)

你的错误信息回顾

Expected response code 250 but got code "530", with message "530-5.5.1 Authentication Required. Learn more at
530 5.5.1 https://support.google.com/mail/?p=WantAuthError 14sm769143wmo.27 - gsmtp

你的配置片段

'driver' => env('MAIL_DRIVER', 'smtp'), 
'host' => env('MAIL_HOST', 'smtp.gmail.com'), 
'port' => env('MAIL_PORT', 587), 
'from' => [ 'address' => ... ]

内容的提问来源于stack exchange,提问作者ricardo Chitagu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 07:34:54