django - 通过 Django 发送电子邮件时出现 SSL 错误
问题描述
ssl.SSLError: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:852)
这是我在运行 Django 网页时在错误日志中看到的内容。我用 Apache 托管它。在页面上,我看到 500:内部服务器错误。
我的电子邮件配置如下:
#Email settings
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'outlook.office365.com'
EMAIL_USE_SSL = True
EMAIL_PORT = 587
EMAIL_HOST_USER = '****@**************.com'
EMAIL_HOST_PASSWORD = '********'
我的 send_mail 代码如下:
send_mail(
'Subject here',
'Here is the message.',
'***************@**************.com',
['****@**************.com'],
fail_silently=False,
)
解决方案
您可以尝试将端口号设置为“465”吗?
来自文档:https ://docs.djangoproject.com/en/2.2/ref/settings/#std:setting-EMAIL_USE_TLS
对于隐式 SSL 连接,端口号为465和
对于 TLS,它是 587
如果这不起作用,可以设置为 False 并查看发送邮件是否正常,让我们在此基础上进一步调试。
推荐阅读
- linker - Fortran 语言绑定错误:为什么不链接到 MPI 库?
- jenkins - 给定一个拉取请求 ID,我如何获取拉取请求的作者?使用 GitHub API?
- adsense - 为什么我的网站没有获得 AdSense 的批准?
- hive - HIVE:优化非分区表到分区表的连接
- javascript - 带边框的复制表格在 Firefox 中不起作用
- android - 在运行时从列表中调用函数序列
- ms-access-2016 - 创建表单的问题在布局视图或表单视图中没有显示,但在设计视图中显示
- ruby-on-rails - 如何将某些值存储在新数组中的 JSON 哈希中?
- php - 向关联数组添加维度
- python - 如何使用 Python 解析相对有组织但没有分隔的文本?