2017-09-03 109 views
1

我试图发送邮件使用Gmail的的SMTP服务器从我的Django应用程序的电子邮件。当我在本地服务器上运行应用程序时,电子邮件正在发送。但是,在heroku上使用它时,我收到了SMTP验证错误。SMTP验证错误和Django在Heroku

回溯 - link

settings.py -

# Email configuration. 

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

而且我复查帐户密码,我也有启用从我的谷歌帐户的安全应用的访问。但我仍然得到这个错误。

回答

1

尝试使用sendgrid,因为Gmail的SMTP有一定的问题。我也无法使用gmail smtp。但它使用sendgrid完美运行。这也是免费的基本使用。

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' 
EMAIL_HOST = 'smtp.sendgrid.net' 
EMAIL_HOST_USER = 'username' 
EMAIL_HOST_PASSWORD = 'userpassword' 
EMAIL_PORT = 587 
EMAIL_USE_TLS = True 
DEFAULT_FROM_EMAIL = '[email protected]' 
+0

的用户名和的userPassword将从sendgrid右边的? –

+0

是的,只需创建帐户并使用相同的用户名和密码即可。 –

+0

并且怎么样'DEFAULT_FROM_EMAIL' –

0

Change from mail(@gmail.com) domain to your company domain .然后它会工作。我们无法从邮件域@ gmail.com使用,DEFAULT_FROM_EMAIL = '******************@yourcompanydomain.com'