【问题标题】:I'm getting an SSL Error when sending email via Django通过 Django 发送电子邮件时出现 SSL 错误
【发布时间】:2019-11-11 09:44:09
【问题描述】:
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,
    )

【问题讨论】:

    标签: django email ssl smtp


    【解决方案1】:

    当您没有使用正确的端口号时会发生此错误。

    您可以在 google 上搜索您的电子邮件服务的 SMTP 设置。

    请检查您的电子邮件服务的正确端口号。

    【讨论】:

    • 谢谢解决了!我没有使用正确的 Outlook 设置
    【解决方案2】:

    您可以尝试将端口号设置为“465”吗?

    来自文档:https://docs.djangoproject.com/en/2.2/ref/settings/#std:setting-EMAIL_USE_TLS

    对于隐式 SSL 连接,端口号为 465

    对于 TLS,它是 587

    如果这不起作用,可以设置为 False 并查看发送邮件是否正常,让我们在此基础上进一步调试。

    【讨论】:

      猜你喜欢
      • 2023-01-29
      • 1970-01-01
      • 1970-01-01
      • 2018-01-09
      • 2012-07-20
      • 1970-01-01
      • 1970-01-01
      • 2015-03-08
      • 2014-02-21
      相关资源
      最近更新 更多