Laravel+GoDaddy配置Microsoft365邮件遇STARTTLS证书匹配错误求助
问题解决:GoDaddy服务器连接Office365 SMTP证书不匹配错误
问题根源
GoDaddy共享主机默认会拦截出站SMTP流量(含587端口),自动路由到自身的邮件中转服务器(*.prod.sxb1.secureserver.net),导致你配置的smtp.office365.com未被实际访问,从而触发证书CN不匹配的错误。
可行解决方案
方案1:使用GoDaddy中继服务发送Office365邮件
更新.env配置为GoDaddy的SMTP中继服务器,同时验证Office365邮箱身份:
# SMTP Settings MAIL_DRIVER=smtp MAIL_MAILER=smtp MAIL_HOST=smtpout.secureserver.net MAIL_PORT=587 MAIL_USERNAME=你的Office365邮箱地址 MAIL_PASSWORD=你的Office365邮箱密码(若开启MFA,需用应用专用密码) MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=你的Office365邮箱地址 MAIL_FROM_NAME="Learn Gate"
- 确保Office365后台已开启POP/IMAP和SMTP访问权限。
- 若开启多因素认证(MFA),必须使用应用专用密码替代普通登录密码。
- 修改配置后,务必清除应用缓存(比如Laravel执行
php artisan config:cache),避免旧配置残留。
方案2:申请GoDaddy解锁外部SMTP访问
若坚持使用Office365原生SMTP服务器,联系GoDaddy客服申请解锁出站SMTP流量到smtp.office365.com。注意:部分共享主机套餐可能不支持此操作,需提前确认主机权限。
方案3:排查基础配置问题
- 检查服务器防火墙/安全组是否拦截了587端口的出站请求。
- 确认
.env文件中没有多余空格或格式错误,尤其是密码和邮箱地址部分。
内容的提问来源于stack exchange,提问作者Mahmoud
相关产品推荐
相关产品推荐

