Django SMTP错误:身份验证失败:身份验证失败

时间:2017-07-25 10:03:08

标签: python django email

我按照以下方式设置了django电子邮件后端:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

# Host for sending e-mail.
EMAIL_HOST = 'mytdl.de'

# Port for sending e-mail.
EMAIL_PORT = 25

# Optional SMTP authentication information for EMAIL_HOST.
EMAIL_HOST_USER = 'me@mytdl.de'
EMAIL_HOST_PASSWORD = config('EMAIL_HOST_PASSWORD')

但是使用django-allauth发送电子邮件将返回以下错误:

(535, b'5.7.8 Error: authentication failed: authentication failure')

使用

测试设置
 telnet  mytdl.de 25

或Thunderbird作为电子邮件客户端正常工作。

2.7.0 Authentication successful

但是Django / SMTP仍然会引发错误。 Django也试图

AUTH CRAM-MD5

而不是

AUTH LOGIN

任何想法?

1 个答案:

答案 0 :(得分:1)

如果您的电子邮件主机是gmail,则可以通过以下简单步骤对其进行修复:

  1. 登录到您的 gmail帐户(您在Django应用程序中用于发送邮件的帐户)。
  2. 然后从Google应用中选择帐户或单击here
  3. 在控制面板上,单击“登录和安全”下的具有帐户访问权限的应用
  4. 然后向下滚动并启用允许安全性较低的应用

还要按以下顺序维护您的设置变量:

settings.py

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'example@gmail.com'
EMAIL_HOST_PASSWORD = 'mypassword'
EMAIL_PORT = 587