临时邮箱是在注册网站或测试服务时保护个人隐私的利器。本文将基于开源项目 cloudflare_temp_email,详细介绍如何利用 Cloudflare Workers 和 Pages,快速搭建一个功能完备的临时邮箱系统,让你轻松薅 Cloudflare 羊毛。
项目特色
- 完全免费: 基于 Cloudflare Workers 和 Pages 的 Serverless 架构,无需自备服务器,零成本部署。
- 功能齐全: 支持邮件接收、查看、删除、自定义域名、邮件转发、垃圾邮件过滤、Telegram 机器人通知等功能。
- 简单易用: 提供详细的安装部署教程和配置说明,即使是新手也能轻松上手。
准备工作
- 拥有一个 Cloudflare 账户。
- 准备两个子域名,例如
webmail.yourdomain.com
(前端) 和cfmail-api.yourdomain.com
(后端)。
安装步骤
1. 数据库设置
- 在 Cloudflare Workers & Pages 中选择 D1 数据库 。
- 创建数据库,命名为
dev
(可自定义)。 - 进入
dev
数据库,打开 Console 标签页。 - 将 schema.sql 文件中的内容复制到 Console (控制台)中,点击 Execute (执行)按钮执行。
2. 后台程序部署
- 在 Workers & Pages 中创建 Workers 应用程序,命名为
cfmail-api
(可自定义)。 - 点击右下角 完成 ,然后点击右上角 Edit code编辑代码。
- 在左侧文件列表中,右键点击
workers.js
并删除。 - 下载项目仓库中的 workers.js 文件。
- 右键点击左侧文件列表,选择 上传 ,将下载的
workers.js
上传。 - 点击右上角 部署 。
- 进入项目的 Settings -> Variables,添加以下环境变量:
ADMIN_PASSWORDS = ["1234"] #后台管理员密码
PASSWORDS = ["1234"] #游客访问密码,可不设置
DOMAINS = ["yourdomain.com"] #需要使用到的临时邮箱域名
JWT_SECRET = ["muooy.com"] #jwt令牌
- 在 KV Namespace Bindings 中添加一个 KV 命名空间。
- 创建一个 KV 命名空间,命名为
dev
。 - 在 Variable name 填入
KV
(大写)。 - 在 KV Namespace 选择
dev
。
- 创建一个 KV 命名空间,命名为
- 添加 D1 数据库:
- 在 Settings -> Variables 中,找到 D1 Database。
- 添加上一步创建的数据库
dev
。
- 再次点击右上角 部署 。
- 后端验证 : 访问后端域名
cfmail-api.yourdomain.com
和cfmail-api.yourdomain.com/health_check
,如果返回OK
,则后端配置完成。
3. 前台程序部署
- 在 Workers & Pages 中创建 Pages 应用程序。
- 选择 Create using direct upload,然后点击 Upload assets 按钮。
- 在项目官方文档中 点击这里生成配置文件,在地址栏输入后端域名的 HTTPS 地址 (例如
https://cfmail-api.yourdomain.com
),生成配置并下载frontend.zip
文件。 - 将
frontend.zip
文件上传到 Pages 中
- 在 Custom Domain 中为前端自定义域名,例如
webmail.yourdomain.com
。 - 前端验证 : 访问前端域名
webmail.yourdomain.com
,应该出现登录界面。
4. 邮件路由设置
- 登录 Cloudflare 仪表盘,选择你的域名。
- 在左侧菜单中选择 Email,然后在 Email Routing 中选择 Routing rules -> Catch-all address。
- 激活 Catch-all address 并点击 Edit。
- 在 Action 中选择 Send to a Worker,目标选择后端 Worker 的名字
cfmail-api
。 - 验证 : 此时应该可以使用前端域名登录临时邮箱系统。
5. 发送邮件设置 (可选)
- 使用 Resend 进行域名验证。
- 在 Resend 的 API-Key 中创建一个 API Key,赋予全部权限,并复制 API Key。
- 在后端 Worker 的 Settings -> Environment Variables 中添加变量
RESEND_TOKEN
,值为复制的 API Key。
RESEND_TOKEN = API Key
- 完成以上步骤后,就可以使用临时邮箱发送邮件了。
6. Telegram 机器人集成 (可选)
- 创建 Telegram 机器人 (请自行搜索教程)。
- 获取机器人的 Token 和你的 Telegram 账户 ID。
- 在后端 Worker 的 Settings -> Environment Variables 中添加以下变量:
TELEGRAM_BOT_TOKEN = 机器人token
- 在临时邮箱管理后台的机器人设置中填写你的 Telegram 账户 ID。
附录:环境变量说明
请参考项目文档 配置 了解所有环境变量的详细说明。
总结
通过以上步骤,你就可以利用 Cloudflare Workers 和 Pages 轻松搭建一个功能强大的临时邮箱系统。希望这篇教程能够帮助你开启 Serverless 之旅,享受免费且便捷的临时邮箱服务!
不会搭建?联系站长帮你搭建© 版权声明
THE END
暂无评论内容