当前位置: 首页>>技术教程>>正文


Python Django Gmail Gmail SMTP设置

, , , ,

问题描述

我正在尝试通过设置gmail smtp从Django发送电子邮件。但是每次它返回我0状态。我在stackoverflow中搜索了不同的相关答案,并且我以相同的方式设置了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 smtp发送电子邮件?非常感谢您的帮助

最佳答案

您的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)

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/10578.html,未经允许,请勿转载。