Django连接smtp.office365.com失败:[Errno 8]域名解析错误求助
Django Office 365 SMTP 连接故障排查求助
项目邮件配置
.env 文件
EMAIL_HOST=smtp.office365.com
settings.py 配置
EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend" EMAIL_HOST = env.str("EMAIL_HOST") EMAIL_PORT = 587 EMAIL_USE_TLS = True EMAIL_HOST_USER = env.str("EMAIL_HOST_USER") EMAIL_HOST_PASSWORD = env.str("EMAIL_HOST_PASSWORD") SERVER_EMAIL = env.str("SERVER_EMAIL") DEFAULT_FROM_EMAIL = env.str("DEFAULT_FROM_EMAIL")
系统报错
../3.10/lib/python3.10/socket.py", line 955, in getaddrinfo for res in _socket.getaddrinfo(host, port, family, type, proto, flags): socket.gaierror: [Errno 8] nodename nor servname provided, or not known
背景与已排查情况
- 该配置自3月起稳定运行,上周突然全环境(本地、开发、生产服务器)邮件发送失败,生产服务器已2个月未更新代码
- 怀疑Office 365端有变更,更换为SendGrid后代码正常运行
- 已排除DNS问题:Azure Linux机器可正常解析其他域名,且能telnet通
smtp.office365.com的587端口 - 微软客服未提供有效帮助
求助
恳请各位提供进一步排查建议。
内容的提问来源于stack exchange,提问作者Brant Scalan
相关产品推荐
相关产品推荐

