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

在DigitalOcean的LEMP栈Ubuntu部署Laravel,Office365 SMTP认证失败求助

问题

我在DigitalOcean的Ubuntu Droplet上部署了Laravel应用,尝试使用Office365邮箱账号发送邮件时出现以下错误:

Failed to authenticate on SMTP server with username "info@example.com" using the following
authenticators: "LOGIN", "XOAUTH2". Authenticator "LOGIN" returned "Expected response code
"235" but got code "535", with message "535 5.7.139 Authentication unsuccessful,
SmtpClientAuthentication is disabled for the Mailbox. Visit
https://aka.ms/smtp_auth_disabled for more information.
[AS4P192CA0012.EURP192.PROD.OUTLOOK.COM 2023-05-22T18:20:29.187Z 08DB5A 1254806496]".".
Authenticator "XOAUTH2" returned "Expected response code "235" but got code "535", with
message "535 5.7.139 Authentication unsuccessful, SmtpClientAuthentication is disabled for
the Mailbox. Visit https://aka.ms/smtp_auth_disabled for more information.
[AS4P192CA0012.EURP192.PROD.OUTLOOK.COM 2023-05-22T18:20:39.951Z 08DB5A1254806496]".".

我的.env文件配置如下:

MAIL_MAILER=smtp
MAIL_HOST=smtp.office365.com
MAIL_PORT=587
MAIL_USERNAME="info@example.com"
MAIL_PASSWORD=***PASSWORD***
MAIL_ENCRYPTION=STARTTLS
MAIL_FROM_ADDRESS="info@example.com"
MAIL_FROM_NAME="${APP_NAME}"

我知道可以启用/禁用SMTP认证,尝试过勾选和取消对应复选框,但没有效果。请问还遗漏了哪些设置才能让网站的SMTP正常工作?

解决方法

  • 确认全局SMTP客户端认证状态:单个邮箱的设置可能被全局配置覆盖,需通过PowerShell检查Exchange Online全局设置:
    Get-TransportConfig | Format-List SmtpClientAuthenticationDisabled
    
    若返回True,说明全局禁用,执行以下命令开启:
    Set-TransportConfig -SmtpClientAuthenticationDisabled $false
    
  • 检查单个邮箱的SMTP认证配置:确保目标邮箱未被单独禁用SMTP认证,执行PowerShell命令:
    Get-CASMailbox info@example.com | Format-List SmtpClientAuthenticationDisabled
    
    若返回True,执行命令开启:
    Set-CASMailbox info@example.com -SmtpClientAuthenticationDisabled $false
    
  • 处理多重身份验证(MFA)场景:如果邮箱开启了MFA,普通密码无法用于SMTP认证,需创建应用专用密码,替换.env中MAIL_PASSWORD的内容。
  • 刷新Laravel配置缓存:修改.env后,必须清除并重建配置缓存,否则新配置不会生效:
    php artisan config:clear
    php artisan config:cache
    
  • 验证服务器网络连通性:检查DigitalOcean Droplet的出站端口587是否被防火墙/安全组封禁,可通过telnet smtp.office365.com 587测试与Office365 SMTP服务器的连通性。

内容的提问来源于stack exchange,提问作者Michel FW

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 08:43:11