• django项目部署服务器后无法发送邮箱 错误信息:Connection unexpectedly closed


    使用配置:

      python 3.7 +

      django 2.2.1

        发送邮件模块 :  from django.core.mail import send_mail 

      服务器:Centos7 阿里云轻量级服务器

    本地测试使用的时候用的是 25 端口,没有任何问题,但是放到服务器上就会无法使用

    问题原因:

      根据阿里云官方解释为:

      因服务器的25端口默认封闭,需要使用SSL加密端口(通常是465)来对外发信,调用的邮箱服务器需要支持SSL加密。

     

    解决方案(修改配置):

    注意: EMAIL_USE_SSL 和 EMAIL_USE_TLS  两个不能同时为True

    1. 服务器 settings.py 配置 ( 记得在防火墙添加 465 端口 )

    # 发送邮箱验证码
    EMAIL_HOST = "smtp.163.com"     # 服务器
    EMAIL_PORT = 465                 # 一般情况下都为25, 服务器为 465
    EMAIL_HOST_USER = "xxx@163.com"     # 账号
    EMAIL_HOST_PASSWORD = "xxx"          # 密码(这里是你的授权码)
    EMAIL_USE_SSL = True            # 这里未配置为True也会触发异常
    EMAIL_FROM = "xxx@163.com"      # 邮箱来自

    2. 本地 settings.py 配置

    # 发送邮箱验证码
    EMAIL_HOST = "smtp.163.com"     # 服务器
    EMAIL_PORT = 25                 # 一般情况下都为25 , 465, 587
    EMAIL_HOST_USER = "xxx@163.com"     # 账号
    EMAIL_HOST_PASSWORD = "xxx"          # 密码(这里是你的授权码)
    EMAIL_USE_TLS = False       # 一般都为False
    EMAIL_FROM = "xxx@163.com"      # 邮箱来自
  • 相关阅读:
    正则表达式基础知识
    成功的基本法则
    Java实现简单的格式化信函生成器
    C实现哈希表
    C实现求解给定文本中以指定字符开头和结尾的子串数量的三种算法
    Java实现求解二项式系数及代码重构
    Java 异常处理学习总结
    C实现大整数幂求模问题的两种算法
    linux 学习前言
    提高编程能力的10种方法
  • 原文地址:https://www.cnblogs.com/chaoqi/p/10969781.html
Copyright © 2020-2023  润新知