动态与分析 6 分钟

我等了很久 Cloudflare 邮件发送功能,它上线了——然后我决定自己造一个工具

Cloudflare Email Sending 刚刚进入公测。我很期待。然后我看了文档,发现它解决的根本不是我每天面对的邮件问题——所以我开发了 OhRelay。

Cloudflare 刚刚将 Email Sending 开放了公开测试。我一直在等这个消息。多年来,我一直依赖 Cloudflare Email Routing 管理多个域名的邮件,很好奇这次能不能终于把这件事做完整。

然后我看了文档。才发现它解决的是一个完全不同的问题。


它做了什么(简版)

Cloudflare Email Sending 让你可以通过 Worker 或 REST API 程序化地发送邮件。接入域名后,Cloudflare 自动配置 SPF、DKIM、DMARC,然后在 Worker 里调用 env.EMAIL.send()

await env.EMAIL.send({
  to: "user@example.com",
  from: "welcome@yourdomain.com",
  subject: "欢迎!",
  html: "<p>感谢注册。</p>",
});

对于需要从应用发送事务性邮件的开发者来说,确实好用——注册确认、魔法链接、通知邮件。API 设计干净,体验不错。

但这不是我每天面对的邮件问题。


我真正的问题

我同时在运营几个项目,各自用不同的域名。每个域名下有多个地址前缀——hello@support@billing@hey@。我希望所有邮件都落在一个地方,回复时自动用正确的地址,不需要每次手动想。

这对独立开发者、小型团队、同时运营多个项目的人来说非常普遍。而现有的方案都有差不多的问题。

企业邮箱(Google Workspace、Fastmail 等)

能用。但按邮箱、按席位、有时按域名收费。一旦你有四个域名六个地址,每个月光邮件管理就是一笔不小的开销——还没开始做产品。而且还要来回切换不同收件箱。

Cloudflare Email Routing

免费,零运维。发给 support@yourdomain.com 的邮件几分钟内就落进你的 Gmail。收件这侧做得很好。

但当你点击回复,Gmail 用的是你的 Gmail 地址。那个写信给 support@yourdomain.com 的用户,收到的回复来自 yourname@gmail.com。专业形象瞬间崩塌。而 Cloudflare Email Sending 解决不了这个问题——Gmail 没办法把它当 SMTP relay 来处理手动回复。

Gmail “以此地址发送” 别名

可以通过外部 SMTP 在 Gmail 里添加自定义发件地址。地址少的时候还能接受。一旦有六个域名、十几个前缀,每次回复都要手动挑正确的地址——迟早会发错。

这些方案都不够好。


所以我自己造了一个

这段时间,我专门针对这个问题搭建了一个中继层。思路是:坐在 Cloudflare Email Routing 和我现有收件箱之间,入站时保留路由上下文,出站时正确地重写信封。

结果就是 OhRelay

它做了什么:

  • Cloudflare 转发邮件时,OhRelay 把原始收件人地址保存在邮件头里——这样到你的 Gmail 时路由信息不会丢失。
  • 你回复时,OhRelay 的 SMTP 网关拦截出站邮件,读取这个上下文,自动把信封重写为 support@yourdomain.com 发出——不需要你手动选。
  • 支持 Gmail、Outlook 和 Apple Mail。每个收件箱配置一次,之后的回复就自动正确。
  • OhRelay 通过 Cloudflare API 自动帮你配置所需的 DNS 记录、部署必要的 Worker 脚本——即使你不懂 DNS、不会写代码,也能完整跑通这套流程。

工作流程:

  1. 邮件发到 support@yourdomain.com
  2. 通过 Cloudflare Email Routing 落进你的 Gmail
  3. 你点击回复
  4. 你的用户收到来自 support@yourdomain.com 的回复 ✓

不需要多余的邮箱,不按席位收费,不需要手动选地址。


目前的状态

OhRelay 大概完成了 90%。核心中继已经跑通,真实邮件在流转。如果你已经在用 Cloudflare Email Routing,配置大概需要 15 分钟。

现在需要的是更多真实用户——有实际域名配置和真实邮件工作流的人——来暴露我还没遇到过的边缘情况。每一种新配置都能教会我一些东西,让下一个用户受益。

如果你一直在忍受发件人错误的问题,或者管理着太多域名和地址却感觉现有工具都是凑合,欢迎来试试。从这里开始,配置主要就是 DNS 和邮件客户端里的一个 SMTP 设置。

如果遇到奇怪的边缘情况,欢迎联系我。产品还在”和用户一起打磨”的阶段,真实反馈决定接下来 10% 的走向。


回到 Cloudflare Email Sending:对于需要从应用中发送程序化邮件的开发者,它值得一看。但它是一个开发者 API,不是收件箱工具。在自定义域名地址收信、再从这个地址回复给真实用户——在你的实际邮件客户端里——这个缺口依然在。这才是我一直在解决的问题。

开始使用

保留你的收件箱,同时管理所有域名地址。

14 天免费试用。