我们有一个在CentOS上运行的Django应用程序。 我们使用Django认证和表单创建了一个密码重置的新功能。Django不发送邮件
这适用于在开发服务器上工作,但是当我将它部署到我们的生产环境时,不会发送带有唯一链接的邮件。 我已经指出这个问题,因为使用smtplib的Django试图通过端口25发送电子邮件与Postfix,而不是使用指向谷歌服务器的settings.py。
当我关闭Postfix时,在尝试重置密码时,连接被拒绝。
我们有其他邮件功能可以使用,只有重置密码不能。
我的settings.py:
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = '[email protected]'
EMAIL_HOST_PASSWORD = 'my-pass'
DEFAULT_FROM_EMAIL = '[email protected]'
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
SERVER_EMAIL = '[email protected]'
的看法是从auth_views.password_reset,我从我的主urls.py文件调用它。
解决方案: 事实证明,我有另一个settings.py文件位于项目的主目录作为备份。 问题是我在apache/django.wsgi文件中添加了此主目录,因此Django正在查看此文件而不是更新的文件。 一旦我删除这个文件一切正常。 感谢您的帮助。
如果其他邮件功能正在工作,该错误很可能隐藏在您的视图中。因此,如果您发布,我们可以尝试帮助 –
我编辑了我的问题以反映您的答案。 –