记一次给博客配置腾讯企业邮箱发信

2026年05月22日0 次阅读0 人喜欢
配置踩坑记录NestJSNAS小破站建设邮件
所属合集

最近想给博客加个邮箱验证码功能,比如评论、登录之类的场景都能用到。

但问题来了,我需要一个能发邮件的地址,总不能用我私人邮箱吧。那就搞个 noreply@nnnnzs.cn,专门用来发系统邮件。

我的现状

我的域名 nnnnzs.cn 是在腾讯云买的,但 DNS 解析一直托管在 Cloudflare 上。之前开通过腾讯企业邮箱,但没怎么用。

这次要配置企业邮箱的 SMTP 发信,整体流程踩了不少坑,记录一下。

第一步:配置 DNS 记录

企业微信的管理后台是真的反人类,操作流程七拐八弯的。好不容易找到邮箱配置入口,它自动在腾讯云 DNS 里加了解析记录:

  • TXT @v=spf1 include:spf.mail.qq.com ~all
  • CNAME qqmail312ca548mail.qq.com
  • MX @mxbiz1.qq.com(优先级 5)
  • MX @mxbiz2.qq.com(优先级 10)

但我的 DNS 解析在 Cloudflare 啊,腾讯云那边加了也没用。

解决办法很简单,手动把这些记录同步到 CF 上。用 Cloudflare API 批量加就行,几条 curl 的事。加完之后把腾讯云那边自动创建的旧记录删掉,DNS 只以 CF 为准。

注意:邮箱相关的 MX、TXT、CNAME 记录,代理状态要关掉(灰色云朵"仅 DNS"),不能走 CF 代理。

第二步:创建公共邮箱

一开始我想的是,企业邮箱必须先有成员才有邮箱,那 noreply 这个账号不是要占一个成员席位?

后来发现企业邮箱有个公共邮箱功能,就是不占用成员席位的独立邮箱,专门用来干这种事。完美。

但这里有个坑:我第一次创建公共邮箱的时候,自定义域名 nnnnzs.cn 还没验证通过,所以系统自动给我分配了 noreply@nnnnzs.wecom.work 这个后缀。

说实话,wecom.work 这个后缀太丑了,看着就不像正经域名,完全不能忍。

第三步:修复域名后缀

去企业邮箱管理后台,域名管理里确认 nnnnzs.cn 状态是"已验证"且"使用中"。

然后删掉旧的 noreply@nnnnzs.wecom.work 公共邮箱,重新创建一个。这次因为域名已经验证过了,直接就是 noreply@nnnnzs.cn

第四步:验证 SMTP

NestJS 里用 nodemailer 连 SMTP 发信,配置如下:

typescript 复制代码
const transporter = nodemailer.createTransport({
  host: "smtp.exmail.qq.com",
  port: 465,
  secure: true,
  auth: {
    user: "noreply@nnnnzs.cn",
    pass: "你的密码",
  },
});

腾讯企业邮箱的 SMTP/IMAP 配置:

  • SMTP:smtp.exmail.qq.com,端口 465(SSL)
  • IMAP:imap.exmail.qq.com,端口 993(SSL)

写了个测试脚本发了一封到我的 QQ 邮箱,秒收,发件人显示 noreply@nnnnzs.cn,搞定。

总结

整个流程说起来不复杂,但实际操作的时候,企业微信后台的 UI 真的让人头疼。找入口、加域名、验证记录、创建公共邮箱,每一步都得摸索半天。

关键点就是:先验证自定义域名,再创建公共邮箱。顺序反了就会拿到 wecom.work 的后缀。

现在 noreply@nnnnzs.cn 可以正常发邮件了,接下来就可以在博客 API 里加验证码功能了。

加载评论中...