在生产环境中通过Django发送SMTP电子邮件

Joh*_*ber 6 django

我在linode ubuntu虚拟机上使用Django-Registration作为我的网站.当用户注册时,我发送连接问题发送激活电子邮件.

这是我的设置:

EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'myemail@gmail.com'
EMAIL_HOST_PASSWORD = 'mypassword'
EMAIL_USE_TLS = True
Run Code Online (Sandbox Code Playgroud)

我已经在本地进行了测试,但它确实有效 我通过主机上的python manage.py shell以交互方式进行测试,当我以root身份登录时,它可以正常工作.我认为由于Apache在www-data下运行,因此存在许可问题.你有任何想法如何解决这个问题?

编辑:对的Linode IRC有人建议我安装ssmtp中包...我也跟着在这里找到了指令http://tombuntu.com/index.php/2008/10/21/sending-email-from-your-system-with -ssmtp /并重新启动服务器......一切都很好.

谢谢

Joh*_*ebs 1

尝试设置

EMAIL_USE_TLS = 1

而不是 EMAIL_USE_TLS = True。这是我的猜测。如果这不起作用,请尝试

EMAIL_DEBUG = 假

虽然说实话我不确定那个人是做什么的。