Python Django Gmail SMTP设置

我试图通过设置Gmail邮件从Django发送电子邮件。 但每次它都返回我0状态。 我已经在stackoverflow中search不同的相关答案,我设置的SMTP服务器相同的方式,但仍然没有发送任何电子邮件..以下是我的设置文件

EMAIL_USE_TLS = True EMAIL_HOST = 'smtp.gmail.com' EMAIL_PORT = 587 EMAIL_HOST_USER = 'my gmail account' EMAIL_HOST_PASSWORD = 'my gmail account password' DEFAULT_FROM_EMAIL = 'my gmail account' DEFAULT_TO_EMAIL = 'to email' 

以下是我的代码

 from django.conf import settings from django.core.mail import send_mail print "Sending Email" mail_title = 'Test Email' message = 'This is a test email.' email = settings.DEFAULT_FROM_EMAIL recipients = [settings.DEFAULT_TO_EMAIL] print send_mail(mail_title, message, email, recipients, settings.EMAIL_HOST_USER, settings.EMAIL_HOST_PASSWORD) print "Email Sent" 

但每次打印状态0意味着电子邮件不发送。 关于环境,我在Amazon EC2实例上运行这个代码,这个实例有Ubuntu作为操作系统,Apache作为服务器。

我需要做额外的设置,通过Gmail邮件发送电子邮件? 非常感谢您的帮助在此先感谢

你的gmail.smtp设置是正确的。 看起来你没有正确地调用send_email函数,这就是为什么它没有发送。 在python shell中,请尝试以下操作:

 import django from django.conf import settings from django.core.mail import send_mail send_mail('Subject here', 'Here is the message.', settings.EMAIL_HOST_USER, ['to@example.com'], fail_silently=False) 

尝试将EMAIL_USE_TLS = True更改为EMAIL_USE_SSL = True,EMAIL_PORT = 465

https://docs.djangoproject.com/en/1.10/topics/email/