我最近开始学习 Django,我编写了一个代码来在“联系我们”页面发送电子邮件,它在我的本地主机中运行良好,但是当我将其上传到服务器时,它给出了此错误:
SMTPServerDisconnected at /contact
Connection unexpectedly closed
这是我的settings.py代码:
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = '[email protected]'
EMAIL_HOST_PASSWORD = 'app passwords'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
这是我的观点.py
send_mail('title', 'message', userEmail, [settings.EMAIL_HOST_USER], fail_silently=False,)
我与主机服务器的支持小组联系以检查端口,但他们说没关系,所以我不知道我是否遗漏了某些东西。
以下是诊断问题的一些建议:
端口 587 可能被阻止或 TLS 可能无法工作。您还可以测试 SSL。
测试端口
465
而不是 587
,均使用 TLS 和 SSL。
要检查阻塞情况,请使用
telnet
、netcat
或 openssl
等工具来验证端口的可访问性。
使用变量
EMAIL_USE_SSL=True
或 EMAIL_USE_TLS=True
在 settings.py 中配置 TLS 或 SSL。