使用django发送邮件时出现此错误。 sendmail中的/usr/lib/python3.6/smtplib.py,行867 sendmail中的/usr/lib/python3.6/smtplib.py 引发SMTPSenderRefused(code,resp,from_addr)
尝试过的mailjet也存在相同的问题
答案 0 :(得分:0)
如果您使用的是Google SMTP,请确保在settings.py文件中设置了以下设置:
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'user emailid'
EMAIL_HOST_PASSWORD = 'password'
还要确保您使用gmail登录,并在计算机中输入了提供的电子邮件ID和密码。 另外,您需要为您的Google帐户中安全性较低的应用启用访问权限。这是帮助您更改Google帐户配置设置的链接link
答案 1 :(得分:0)
您需要通过Google帐户创建应用密码。 您不能使用您的电子邮件地址发送邮件。 转到此链接:https://myaccount.google.com/security
答案 2 :(得分:0)
对我来说,错误是由以下原因引起的:
EMAIL_HOST_USER = os.getenv('EMAIL_HOST_USER')
EMAIL_HOST_PASSWORD = os.getenv('EMAIL_HOST_PASSWORD')
作为未正确导入的env变量。
还请记住为您的Google帐户中安全性较低的应用启用访问权限。
答案 3 :(得分:0)
您的用户必须是活跃的并且具有有效的电子邮件。
转到https://myaccount.google.com/security
,按app password
,并生成16个符号的密码,然后将其设置为设置。
并在settings.py中使用它:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'put here your email-address with 16-symbolic password'
EMAIL_HOST_PASSWORD = 'put here your 16-symbols symbolic'