利用cloudflarework+pages部署一个简易的临时邮件系统-cloudflare羊毛系列

利用cloudflarework+pages部署一个简易的临时邮件系统-cloudflare羊毛系列
Wandong Ls利用cloudflarework+pages部署一个简易的临时邮件系统-cloudflare羊毛系列
项目官方文档
https://temp-mail-docs.awsl.uk/zh/guide/config-send-mail
项目github仓库
https://github.com/dreamhunter2333/cloudflare_temp_email
安装过程
首先要定义两个域名
- 前端url webmail.milaone.app
- 后端url cfmail-api.milaone.app
1.数据库设置
- 在works和pages中选D1数据库
- 创建数据库起名字dev
- 创建后进入到dev数据库,然后打开consol标签
-把 https://github.com/dreamhunter2333/cloudflare_temp_email/blob/main/db/schema.sql 这个schema.sql文件中的内容复制到donsol中,然后点击Execute按钮 - 数据库创建完成
2.后台程序部署
还是在在works和pages中,创建应用程序,选workers
起名字cfmail-api,保存,然后点右下角完成.
然后界面中右上角点edit code.
然后再左边点击文件按钮,右键点works.js然后删除.
再下载 works.js
右键点击,出现上传,把下载的works.js上传上去,然后右上角部署
再来到项目的settings–>Variables中,添加变量
开始部署时我们只添加4个变量,文章结尾我附带了可设置的变量代码示例说明.
- ADMIN_PASSWORDS = [“1234”]
- PASSWORDS = [“1234”]
- DOMAINS = [“milaone.app”]
- JWT_SECRET =[“xxxyyyzzz”]
在KV Namespace Bindings中添加一个KV
- 创建一个KV,起名字dev
- 然后在这里Variable name填 KV 大写.
- KV Namespace选择创建的KV库dev
添加D1数据库
- 同样在settings–>Variable中,找到D1 Database,添加上一步创建的数据库dev
最后再进行部署一次.
后端验证
- 后端设置完成后,可以通过访问后端域名的url及目录进行验证,例如我的域名
- cfmail-api.milaone.app 返回结果OK
- cfmail-api.milaone.app/health_check 返回结果OK
- 则说明后端配置完成.后期可随时在变量中增删内容以达到配置效果
3.前台程序部署
- 还是在在works和pages中,创建应用程序,选Pages
- 选择Create using direct upload,然后再选择Upload assets按钮
- 然后来到作者的官方文档中 点击这里生成配置文件
- 在该页面中的地址栏输入后端的域名的https地址,比如我使用的地址是https://cfmail-api.milaone.app 生成配置,得到下载一个frontend.zip文件,上传到pages中.
- 最后在Custom Domain给前端自定义一个域名,例如我使用的是webmail.milaone.app
- 前端验证,访问前端https://webmail.milaone.com,此时应该出现界面并提示输入密码
3.邮件路由设置
- 来到https://dash.cloudflare.com 面板首页,然后选择需要使用的域名进入.
- 左边选择Email菜单,在Email Routing中选择Routing ruls中Catch-all address
激活,并且edit. - 其中的Action选择的是Send to a Worker ,目标选择后端的worker名字
- 验证:截止到现在登录前端url已经可以
4.发送邮件设置
- https://resend.com/domains 进行域名验证
- 然后在API-Key 中创建一个api,全部权限,然后把密码拷贝
- 到后端的Worker中Settings–>Environment Variables–>添加一个变量
- RESEND_TOKEN = re_PxW46o6o_HJrmMYARCGdhMtB3JHD(上一步拷贝出来的密码)
截止到以上步骤,就可以完整的收发邮件了.
如果需要更方便的朋友,强烈建议挂上Telegram机器人
5.Telegram机器人
- 创建机器人(具体方法自己搜.)
- 拿到用于这个项目的机器人token,还有telegram的账户id.
- 到后端的Worker中Settings–>Environment Variables–>添加一个变量
- TELEGRAM_BOT_TOKEN = 机器人token
- 在邮件的管理后台,机器人中填入账户id.
附1:变量说明
1 | [vars] |
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果








