1. 方案背景与痛点
对于手里有多个项目(网站/App)的开发者来说,每个项目通常需要两类邮件服务:
- 通知类 (Transactional): 验证码、订单提醒(如使用 Zoho ZeptoMail)。
- 客服/联系类 (Support): 人工回信、商务咨询(如
support@domain.com)。
痛点:
- 成本高: 传统的企业邮箱按域名或按人头收费,项目多了负担极重。
- 效率低: 在多个邮箱后台来回切换,极易漏掉重要客户。
- 送达难: 新域名发信极易被 Gmail/Outlook 拦截。
2. 方案核心优势
- $0 成本: 利用 Cloudflare (转发) + Resend (3000封/月发信) + 个人 Gmail。
- 中心化: 所有项目的收信、回复都在同一个个人 Gmail 窗口完成,无需切换。
- 专业性: 客户看到的是
support@project.com,而非你的私人邮箱。 - 操作性: 熟练后,新域名上线配置仅需 3 分钟。
3. 具体配置方法
第一步:Cloudflare 收信路由 (入站)
目的:让发往域名邮箱的信,自动“躺”进你的个人 Gmail。
- 激活路由: 进入 Cloudflare 域名后台 ->
Email->Email Routing。 - 设置 Destination: 在
Settings中添加并验证你的个人 Gmail 地址。 - 配置路由规则 (Routes):
- 方法 A (精准型): 创建地址
support,转发到个人 Gmail。 - 方法 B (全能型): 开启 Catch-all。这样发往该域名下任何地址(如
hello@,admin@)的信你都能收到。
- 方法 A (精准型): 创建地址
- DNS 激活: 确保主域名 (
@) 的 MX 记录指向 Cloudflare(系统通常会提示一键添加)。
第二步:Resend 发信授权 (出站准备)
目的:获取以域名身份通过 Gmail 发信的权限。
- 添加域名: 在 Resend 后台添加项目域名。
- 验证 DNS: 按照要求在 Cloudflare 添加 3 条 DKIM 记录(通常是 CNAME 或 TXT)。
- 生成 API Key: 在 Resend 后台创建一个
Full Access的 API Key(格式为re_...),这是你后续在 Gmail 登录的“密码”。
第三步:Gmail SMTP 绑定 (闭环)
目的:在 Gmail 撰写邮件时,下拉选择对应的域名邮箱发送。
- Gmail 设置:
查看所有设置->账号和导入->用这个地址发送邮件->添加其他电子邮件地址。 - SMTP 配置参数:
- SMTP 服务器:
smtp.resend.com - 端口:
587(TLS) - 用户名:
resend(注意:固定为此字符串,不要填邮箱) - 密码: 粘贴你刚才生成的 Resend API Key。
- SMTP 服务器:
- 验证: 回到 Gmail 收件箱(因为第一步配好了转发,你会收到验证码),输入验证码完成绑定。
4. 关键注意事项 (必看)
⚠️ SPF 记录合并 (最易出错点)
一个域名只能有一条 SPF 记录。如果你同时用 ZeptoMail 做通知,用 Resend 回信,用 Cloudflare 转发,必须合并成一条:
- 正确写法示例:
v=spf1 include:_spf.mx.cloudflare.net include:zeptomail.net include:resend.com ~all - 后果: 如果不合并(或者有两条 SPF),邮件会被 Gmail 判定为伪造,直接进入垃圾箱或拒收。
⚠️ MX 记录冲突
- 主域名 (@): 只能指向 Cloudflare 的 MX 记录,否则转发功能会失效(报错 550)。
- 发信域名 (如 send): 按照 Resend 要求设置在子域名上,不要动主域名的 MX。
⚠️ DMARC 策略
为了防止进垃圾箱,必须添加一条 DMARC 记录(TXT):
- Name:
_dmarc - Value:
v=DMARC1; p=none;
5. 常见问题排查
- 报错 550 – 5.1.1 Address does not exist: Cloudflare 的 Routes 没配好,或者 MX 记录没生效。
- Gmail 提示验证失败: 检查 SMTP 用户名是否拼错,密码是否是完整的
re_开头 API Key。 - 邮件进垃圾箱: 检查主域名的 SPF 记录是否包含了
include:resend.com,并在 Gmail 中手动点击一次“这不是垃圾邮件”进行训练。
下一步: 如果你还有其他域名,只需重复上述流程。建议在 Gmail 里为不同域名的来信设置不同的标签 (Label),并根据收件人自动分类。