使用Bluehost电子邮件服务器配置Django电子邮件

5
我是 Bluehost 和 Django 的新手,我正在尝试在我的 Bluehost 服务器上使用 Django 设置“通过电子邮件重置密码”功能。我尝试了不同的主机和端口号组合,但出于某种原因它从未起作用。以下是我的设置:(我目前只在本地计算机上工作。)
在 Bluehost 网站上,我可以配置我的电子邮件帐户,其中列出如下信息:
手动设置
邮件服务器用户名:admin+my_host.com
传入邮件服务器:mail.my_host.com
传入邮件服务器:(SSL)box664.bluehost.com
传出邮件服务器:mail.my_host.com(服务器需要身份验证)端口26
传出邮件服务器:(SSL)box664.bluehost.com(服务器需要身份验证)端口465
支持的传入邮件协议:POP3、POP3S(SSL/TLS)、IMAP、IMAPS(SSL/TLS)
支持的传出邮件协议:SMTP、SMTPS(SSL/TLS)
在 settings.py 文件中,我的电子邮件已被配置为: 组合1 代码如下: EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_USE_TLS = True EMAIL_HOST = 'mail.my_host.com' EMAIL_PORT = 26 EMAIL_HOST_USER = 'admin+my_host.com' EMAIL_HOST_PASSWORD = 'my_password'
错误信息:[WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 组合2 代码如下: EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_USE_TLS = True EMAIL_HOST = 'box664.bluehost.com' EMAIL_PORT = 465 EMAIL_HOST_USER = 'admin+my_host.com' EMAIL_HOST_PASSWORD = 'my_password'
错误信息:[WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
DEFAULT_FROM_EMAIL  = 'admin@my_host.com'
SERVER_EMAIL = 'admin@my_host.com'
EMAIL_USE_TLS   = False
EMAIL_HOST      = 'box664.bluehost.com'
EMAIL_HOST_PASSWORD = 'my_email_password'
EMAIL_HOST_USER = 'admin+my_host.com'
EMAIL_PORT      = 465
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

错误信息:异常值:连接意外关闭 组合2
DEFAULT_FROM_EMAIL  = 'admin@my_host.com'
SERVER_EMAIL = 'admin@my_host.com'
EMAIL_USE_TLS   = True
EMAIL_HOST      = 'mail.my_host.com'
EMAIL_HOST_PASSWORD = 'my_email_password'
EMAIL_HOST_USER = 'admin+my_host.com'
EMAIL_PORT      = 26
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

错误信息: 异常值: (535, '身份验证数据不正确')


有人能告诉我哪里出错了吗?非常感谢任何帮助。

2个回答

3
以下设置:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_TLS = False
EMAIL_HOST = 'mail.yourdomain.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'no-reply@yourdomain.com'
EMAIL_HOST_PASSWORD = 'password'
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

这对我很有帮助。我测试的Django版本是1.8.8。 Bluehost SMTP设置的详细信息在这里解释。


有最新的信息吗?我已经尝试了每种组合,但send_mail函数一直无限挂起。 - zorrotmm

1
我不确定问题出在哪里,但我也遇到了同样的问题。我认为这可能与SMTP/SSL有关。因此,我使用了这个:https://github.com/perenecabuto/django-sendmail-backend 然后我在settings.py中使用了以下配置:
    EMAIL_USE_SSL = False
    EMAIL_USE_TLS= False
    EMAIL_HOST = 'box###.bluehost.com'
    EMAIL_PORT = 465
    EMAIL_HOST_USER = 'someone@example.com'
    EMAIL_HOST_PASSWORD = 'password'

希望它有所帮助。

1
这对我有用,但是当我在Gmail中以此方式发送电子邮件时,它会说可能是由垃圾邮件发送者发送的。我认为这可能是因为没有使用TLS或SSL。 - Martinez Mariano

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接