dify邮件发送

一、概述

dify默认安装完成后,在登录首页,重置密码,是收不到邮件的。需要修改相关环境变量才行!

二、修改配置

docker-compose部署的,请直接修改.env文件

k8s部署的,请修改全局configMap配置

修改以下变量

MAIL_TYPE: "smtp"
MAIL_DEFAULT_SEND_FROM: "12345678910@qq.com"
SMTP_SERVER: "smtp.qq.com"
SMTP_PORT: "587"
SMTP_USERNAME: "12345678910@qq.com"
SMTP_PASSWORD: "youer password"
SMTP_USE_TLS: "true"
SMTP_OPPORTUNISTIC_TLS: "true"

参数解释:

1. MAIL_TYPE: “smtp”

      • 作用:指定邮件发送的类型。
      • 说明:smtp 表示使用 SMTP 协议发送邮件。SMTP 是一种常用的邮件传输协议。

      2. MAIL_DEFAULT_SEND_FROM: “12345678910@qq.com”

      • 作用:设置默认的发件人邮箱地址。
      • 说明:当发送邮件时,如果没有指定发件人地址,将使用此地址作为发件人。

      3. SMTP_SERVER: “smtp.qq.com”

      • 作用:指定 SMTP 服务器的地址。
      • 说明:smtp.qq.com 是 QQ 邮箱的 SMTP 服务器地址,用于发送邮件。

      4. SMTP_PORT: “587”

      • 作用:指定 SMTP 服务器的端口号。
      • 说明:端口 587 通常用于 SMTP 的 TLS 加密连接。QQ 邮箱的 SMTP 服务通常使用此端口。

      5. SMTP_USERNAME: “12345678910@qq.com”

      • 作用:指定用于登录 SMTP 服务器的用户名。
      • 说明:通常为发件人的邮箱地址(如 12345678910@qq.com)。

      6. SMTP_PASSWORD: “your password”

      • 作用:指定用于登录 SMTP 服务器的密码。
      • 说明:这是发件人邮箱的授权码或密码。对于 QQ 邮箱,通常需要使用授权码而不是登录密码。

      7. SMTP_USE_TLS: “true”

      • 作用:指定是否使用 TLS 加密。
      • 说明:true 表示启用 TLS 加密,确保邮件传输的安全性。

      8. SMTP_OPPORTUNISTIC_TLS: “true”

      • 作用:指定是否使用机会性 TLS。
      • 说明:

      true 表示如果服务器支持 TLS,则使用 TLS;如果不支持,则继续使用非加密连接。

      false 表示如果服务器不支持 TLS,则连接将失败。

      修改完成之后,需要重启2个组件,api和worker

      k8s部署的,直接删除2个pod即可

      kubectl -n dify delete po api-0 worker-0

      再次点击重置密码,输入邮箱地址

      查看worker日志

      kubectl -n dify logs -f worker-0

      发送成功,会出现以下信息

      2025-04-07 07:24:10.975 INFO [MainThread] [strategy.py:161] - Task tasks.mail_reset_password_task.send_reset_password_mail_task[f349a0a8-c0bc-4d4a-b3e2-cd2d546bd3a2] received
      2025-04-07 07:24:10.976 INFO [Dummy-2] [mail_reset_password_task.py:22] - Start password reset mail to 12345678910@qq.com
      2025-04-07 07:24:12.290 INFO [Dummy-2] [mail_reset_password_task.py:35] - Send password reset mail to 12345678910@qq.com succeeded: latency: 1.3140237269999488
      2025-04-07 07:24:12.321 INFO [Dummy-2] [trace.py:128] - Task tasks.mail_reset_password_task.send_reset_password_mail_task[f349a0a8-c0bc-4d4a-b3e2-cd2d546bd3a2] succeeded in 1.3454044939990126s: None

      提示发送邮件成功。

      登录邮箱,查看邮件,内容如下:

      dify邮件发送

      输入验证码,就可以重置密码了。

      如果邮件发送失败,请检查worker和SMTP服务器,端口是否能够通讯。账号密码是否正确。

      转载作品,原作者:肖祥,文章来源:https://www.cnblogs.com/xiao987334176/p/18812924

      (0)
      打赏 微信赞赏 微信赞赏 支付宝赞赏 支付宝赞赏
      上一篇 2025-04-27 17:42
      下一篇 2025-04-28 15:45

      相关推荐

      发表回复

      登录后才能评论
      扫码了解
      扫码了解
      反馈建议
      分享本页
      返回顶部