无法使用 Django 和 NGINX 服务器(DigitalOcean 液滴)发送电子邮件

Cannot send email using Django and NGINX Server (DigitalOcean droplet)

我正在尝试使用 Django 发送电子邮件但没有成功。
我将 settings.py 文件配置如下:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = "xxx@gmail.com"
EMAIL_HOST_PASSWORD = "xxx"
EMAIL_PORT = 587
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'

我写了一个非常简单的视图来测试邮件发送:

def send_email_test(request):
        from_email = "xxx@gmail.com"
        to = "yyy86@gmail.com"
        send_mail("test oggetto", "test messaggio", from_email, [to], fail_silently=False)
        print "email sent"
        return render_to_response('index.html', context_instance=RequestContext(request))

在我的服务器控制台上我可以看到这个日志:

Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: test oggetto
From: xxx@gmail.com
To: yyy@gmail.com
Date: Thu, 09 Jul 2015 09:18:47 -0000
Message-ID: <20150709091847.28525.42497@MyServer>

test messaggio
-------------------------------------------------------------------------------
email sent

无论如何,我的电子邮件帐户没有收到邮件。
有什么建议吗?

好吧,您正在使用 ConsoleBackend,顾名思义,它只是将电子邮件打印到控制台以进行测试。

我想你想要 django.core.mail.backends.smtp.EmailBackend,如 the documentation 中所述。

这是一个与我的 Google 帐户的安全设置有关的问题。
如果你们中的一些人遇到同样的问题,您需要允许使用外部应用程序访问您的 Google 帐户。
使用以下 link:
https://accounts.google.com/b/0/DisplayUnlockCaptcha

然后单击“继续”按钮并在接下来的 30 秒内使用您的应用程序访问您的 Google 帐户。