【发布时间】:2020-09-01 13:01:25
【问题描述】:
我有一个使用 nginx 和 gunicorn 在 Digital Ocean 上托管的网络应用程序。我最近尝试为我的用户添加密码重置功能以及联系表格。当我在本地机器上运行和测试时,一切正常,但现在我已经转移到生产环境中,当我尝试发送密码重置电子邮件时收到 500 错误,并且我的联系表没有生成任何电子邮件。
是否需要进行一些与数字海洋或 nginx 相关的额外设置以允许发送电子邮件?
我的 settings.py 设置如下:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'mail.privateemail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'admin@programaticlearning.com'
EMAIL_HOST_PASSWORD = 'CorrectPassword'
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
【问题讨论】:
-
你得到的 500 是赠品,有问题。你有任何相关的日志吗?可以在这里添加吗?如果没有,最简单的方法(但不是推荐的方法)是启用
settings.DEBUG片刻,再次触发错误并检查 Django 调试页面上的回溯。 -
所以当我改变 DEBUG = True 它开始工作。因此,由于打开了 DEBUG,因此正在发生任何事情。而且我检查了日志,那里没有任何帮助
-
这是唯一不起作用的吗?我曾经遇到过切换
DEBUG的问题,问题是我的值错误settings.ALLOWED_HOSTS -
嗯,也许是允许主机....这似乎是之前出现的问题:stackoverflow.com/questions/47093584/…
-
好的,如果没有回溯就很难判断。设置某种日志记录以获取回溯。手动写入日志文件或类似Sentry
标签: django nginx digital-ocean email