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

Django项目线上发邮件报Incorrect authentication data如何解决

Django SMTP 535认证错误(本地正常线上失效)解决方案
  • Gmail 配置修正
    Gmail 自2022年起已经全面停止支持「低安全性应用访问」功能,你之前开启的该配置已经失效,需要按以下步骤调整:
    1. 先为你的Google账号开启两步验证
    2. 生成应用专用密码,将EMAIL_HOST_PASSWORD替换为该16位应用专用密码即可,不需要修改其他配置
  • 线上服务器端口/网络排查
    本地正常线上报错的核心原因90%都是服务器出站端口被限制:
    1. 先登录线上服务器,执行命令telnet gmail.com 465 或者 openssl s_client -connect gmail.com:465 测试端口连通性,如果无法连接,说明你的云服务商/机房默认封禁了SMTP出站端口,需要到服务商控制台申请解封465、587端口
    2. 检查线上服务器的防火墙规则,确认没有主动拦截SMTP出站请求
  • cpanel邮箱配置排查
    1. 确认cpanel侧的SMTP服务允许你线上服务器的IP访问,很多cpanel默认开启了SMTP源IP限制,需要将线上服务器IP加入白名单
    2. 部分cpanel的SMTP主机不是mail.你的域名,需要到cpanel的邮件配置页确认正确的SMTP主机地址,避免填错
    3. 确认DEFAULT_FROM_EMAIL和EMAIL_HOST_USER完全一致,cpanel不允许发件人和认证账号不一致
  • 配置准确性校验
    很多部署场景下邮件配置是通过环境变量注入的,很容易出现配置值错误:
    登录线上服务器进入Django Shell,执行以下代码确认配置和本地测试的配置完全一致:
    from django.conf import settings
    print("邮箱账号:", settings.EMAIL_HOST_USER)
    print("邮箱密码:", settings.EMAIL_HOST_PASSWORD)
    print("SMTP主机:", settings.EMAIL_HOST)
    print("SMTP端口:", settings.EMAIL_PORT)
    
    重点检查密码是否多了空格、换行符,或者账号拼写错误。

内容的提问来源于stack exchange,提问作者itna sakib

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 03:15:08