首页
关于
Search
1
AdGuardHome 安装及部署教程
47,835 阅读
2
关于微软Azure学生白嫖指南
12,188 阅读
3
Oracle开放全部端口并关闭防火墙
12,178 阅读
4
搭建基于telegram的无限网盘
11,541 阅读
5
最新Cloudflare免费自选IP教程(非Partner)
10,198 阅读
默认分类
技术搬砖
教学设计
故事奇谈
生活琐事
错题分析
精品软件
登录
找到
5
篇与
Cloudflare
相关的结果
2025-09-23
Cloudflare域名临时邮箱
一、cloudflare_temp_email image图片 image图片 部署地址:https://temp-mail-docs.awsl.uk/ 核心功能 邮件处理 使用 rust wasm 解析邮件,解析速度快,几乎所有邮件都能解析,node 的解析模块解析邮件失败的邮件,rust wasm 也能解析成功 支持发送邮件,支持 DKIM 验证 支持 SMTP 和 Resend 等多种发送方式 增加查看 附件 功能,支持附件图片显示 支持 S3 附件存储和删除功能 垃圾邮件检测和黑白名单配置 邮件转发功能,支持全局转发地址 用户管理 使用 凭证 重新登录之前的邮箱 添加完整的用户注册登录功能,可绑定邮箱地址,绑定后可自动获取邮箱JWT凭证切换不同邮箱 支持 OAuth2 第三方登录(Github、Authentik 等) 支持 Passkey 无密码登录 用户角色管理,支持多角色域名和前缀配置 用户收件箱查看,支持地址和关键词过滤 管理功能 完整的 admin 控制台 admin 后台创建无前缀邮箱 admin 用户管理页面,增加用户地址查看功能 定时清理功能,支持多种清理策略 获取自定义名字的邮箱,admin 可配置黑名单 增加访问密码,可作为私人站点 集成与扩展 完整的 Telegram Bot 支持,以及 Telegram 推送,Telegram Bot 小程序 添加 SMTP proxy server,支持 SMTP 发送邮件,IMAP 查看邮件 Webhook 支持,消息推送集成支持 CF Turnstile 人机验证限流配置,防止滥用 Gihub Actions 部署 初始化/更新 D1 数据库 创建数据库 打开 cloudflare 控制台,选择 Storage & Databases -> D1 SQL Database -> Create Database,点击创建数据库 image图片 创建完成后,我们在 cloudflare 的控制台可以看到 D1 数据库 初始化数据库注意 你也可以跳过初始化数据库,在部署完成后,在 admin 页面的 快速设置 -> 数据库 中,点击 初始化数据库 按钮来初始化数据库打开 Console 标签页,输入仓库中 db/schema.sql 文件的内容,点击 Execute 执行 image图片 更新数据库 schema schema 更新,请确认你之前部署的版本, 查看 更新日志 找到需要执行的 patch 文件, 执行, 例如: db/2024-01-13-patch.sql 打开 Console 标签页,输入 patch 文件的内容,点击 Execute 执行 image图片 Github Actions 配置 Fork 仓库并启用 Actions 在 GitHub fork 本仓库 打开仓库的 Actions 页面 找到 Deploy Backend 点击 enable workflow 启用 workflow 如果需要前后端分离部署, 找到Deploy Frontend 点击 enable workflow 启用 workflow 配置 Secrets 然后在仓库页面 Settings -> Secrets and variables -> Actions -> Repository secrets, 添加以下 secrets: 公共 secrets 名称说明CLOUDFLARE_ACCOUNT_IDCloudflare 账户 ID, 参考文档CLOUDFLARE_API_TOKENCloudflare API Token, 参考文档 worker 后端 secrets 名称说明BACKEND_TOML后端配置文件,参考此处DEBUG_MODE(可选) 是否开启调试模式,配置为 true 开启, 默认 worker 部署日志不会输出到 Github Actions 页面,开启后会输出BACKEND_USE_MAIL_WASM_PARSER(可选) 是否使用 wasm 解析邮件,配置为 true 开启, 功能参考 配置 worker 使用 wasm 解析邮件USE_WORKER_ASSETS(可选) 部署带有前端资源的 Worker, 配置为 true 开启 pages 前端 secrets 注意 如果选择部署带有前端资源的 Worker, 则无须配置这些 secrets 名称说明FRONTEND_ENV前端配置文件,请复制 frontend/.env.example 的内容,并参考此处修改FRONTEND_NAME你在 Cloudflare Pages 创建的项目名称,可通过 用户界面 或者 命令行 创建FRONTEND_BRANCH(可选) pages 部署的分支,可不配置,默认 productionTG_FRONTEND_NAME(可选) 你在 Cloudflare Pages 创建的项目名称,同 FRONTEND_NAME,如果需要 Telegram Mini App 功能,请填写 部署 打开仓库的 Actions 页面 找到 Deploy Backend 点击 Run workflow 选择分支手动部署 如果需要前后端分离部署, 找到 Deploy Frontend, 点击 Run workflow 选择分支手动部署 如何配置自动更新 打开仓库的 Actions 页面,找到 Upstream Sync,点击 enable workflow 启用 workflow 如果 Upstream Sync 运行失败,到仓库主页点击 Sync 手动同步即可 配置邮件转发 设置完成后才能接收邮件了 回到 cloudflare 控制台,点击菜单账户主页,再点你的域名 图片 菜单栏会发生变化 图片 图片 图片 启用电子邮件 图片 图片 设置转发到 worker 图片 图片 设置完成的样子 图片 使用 Resend 发送邮件 1. 在 Resend 绑定并验证发信域名 登录 Resend 后台,进入 Domains,点击 Add Domain。 按向导添加你的发件域名,并在 DNS 处添加相应记录,待验证通过。 示意图(流程参考): 图片 图片 图片 图片 图片 完成后,确保域名状态为 Verified。发件地址必须使用该已验证域名,例如:no-reply@yourdomain.com 2. 创建 Resend API Key 进入 Resend → API Keys,点击 Create API Key。 建议选择可读写权限(Emails: send/read/update),并妥善保存生成的 Key。 参考截图: 图片 图片 图片 3. 在 Cloudflare Workers 配置变量 可以在 Cloudflare 的 UI 界面中,在Variables and Secrets 下面,将变量 RESEND_TOKEN 添加到 secrets 中 配置 Telegram Bot 注意:worker 默认的 worker.dev 域名的证书是不被 telegram 支持的,配置 Telegram Bot 请使用自定义域名 注意:如果要使用 Telegram Bot, 请先新建KV并后端绑定 KV 配置 worker 使用 wasm 解析邮件 如果你使用了 webhook 转发,或者 telegram bot 接受邮件,但是邮件内容是乱码,或者无法解析,你对解析的需要更高的要求,可以使用这个功能。 下载 worker-with-wasm-mail-parser.zip 回到 Overview,找到刚刚创建的 worker,点击 Edit Code, 删除原来的文件,上传 worker.js 和 wasm 后缀的文件, 点击 Deploy NOTE 上传需要先点击左侧菜单的 Explorer, 在文件列表的窗口里点击鼠标右键,在右键菜单里找到 Upload image图片 image图片 Telegram Bot 配置 请先创建一个 Telegram Bot,然后获取 token,然后在 Cloudflare 的 UI 界面中添加变量:TELEGRAM_BOT_TOKEN到 Variables and Secrets 下面 可设置白名单用户 点击初始化即可完成配置。 点击查看状态,可以查看当前配置的状态。 image图片 Mini App部署 从这里下载 zip, telegram-frontend.zip 修改压缩包里面的 index-xxx.js 文件 ,xx 是随机的字符串 搜索 https://temp-email-api.xxx.xxx ,替换成你worker 的域名,然后部署新的zip文件 部署完成后,请在 admin 后台的 设置 -\> 电报小程序 页面 电报小程序 URL 中填写网页 URL。 请在 @BotFather 处执行 /setmenubutton,然后输入你的网页地址,设置左下角的 Open App 按钮。 请在 @BotFather 处执行 /newapp 新建 app 来注册 mini app。 二、MoeMail部署 image图片 image图片 image图片 特性 隐私保护:保护您的真实邮箱地址,远离垃圾邮件和不必要的订阅 实时收件:自动轮询,即时接收邮件通知 灵活有效期:支持 1 小时、24 小时、3 天或永久有效 主题切换:支持亮色和暗色模式 响应式设计:完美适配桌面和移动设备 自动清理:自动清理过期的邮箱和邮件 PWA 支持:支持 PWA 安装 免费自部署:基于 Cloudflare 构建, 可实现免费自部署,无需任何费用 可爱的 UI:简洁可爱萌萌哒 UI 界面 发件功能:支持使用临时邮箱发送邮件,基于 Resend 服务 Webhook 通知:支持通过 webhook 接收新邮件通知 权限系统:支持基于角色的权限控制系统 OpenAPI:支持通过 API Key 访问 OpenAPI Github Actions 部署 自动触发:推送新的 tag 时自动触发部署流程 手动触发:在 GitHub Actions 页面手动触发 部署步骤 在 GitHub 仓库设置中添加以下 Secrets: CLOUDFLARE_API_TOKEN: Cloudflare API 令牌 CLOUDFLARE_ACCOUNT_ID: Cloudflare 账户 ID AUTH_GITHUB_ID: GitHub OAuth App ID AUTH_GITHUB_SECRET: GitHub OAuth App Secret AUTH_SECRET: NextAuth Secret,用来加密 session,请设置一个随机字符串 CUSTOM_DOMAIN: 网站自定义域名,用于访问 MoeMail (可选, 如果不填, 则会使用 Cloudflare Pages 默认域名) PROJECT_NAME: Pages 项目名 (可选,如果不填,则为 moemail) DATABASE_NAME: D1 数据库名称 (可选,如果不填,则为 moemail-db) KV_NAMESPACE_NAME: Cloudflare KV namespace 名称,用于存储网站配置 (可选,如果不填,则为 moemail-kv) 选择触发方式: 方式一:推送 tag 触发 # 创建新的 tag git tag v1.0.0 # 推送 tag 到远程仓库 git push origin v1.0.0方式二:手动触发 进入仓库的 Actions 页面 选择 "Deploy" workflow 点击 "Run workflow" 部署进度可以在仓库的 Actions 标签页查看 注意事项 确保所有 Secrets 都已正确设置 使用 tag 触发时,tag 必须以 v 开头(例如:v1.0.0) Deploy to Cloudflare Workers图片Deploy to Cloudflare Workers 邮箱域名配置 在 MoeMail 个人中心页面,可以配置网站的邮箱域名,支持多域名配置,多个域名用逗号分隔 title="邮箱域名配置"图片 Cloudflare 邮件路由配置 为了使邮箱域名生效,还需要在 Cloudflare 控制台配置邮件路由,将收到的邮件转发给 Email Worker 处理。 登录 Cloudflare 控制台 选择您的域名 点击左侧菜单的 "电子邮件" -> "电子邮件路由" 如果显示 “电子邮件路由当前被禁用,没有在路由电子邮件”,请点击 "启用电子邮件路由" title="启用电子邮件路由"图片 点击后,会提示你添加电子邮件路由 DNS 记录,点击 “添加记录并启用” 即可 title="添加电子邮件路由 DNS 记录"图片 配置路由规则: Catch-all 地址: 启用 "Catch-all" 编辑 Catch-all 地址 操作: 选择 "发送到 Worker" 目标位置: 选择刚刚部署的 "email-receiver-worker" 保存 title="配置路由规则"图片 注意事项 确保域名的 DNS 托管在 Cloudflare Email Worker 必须已经部署成功 如果 Catch-All 状态不可用(一直 loading),请点击路由规则旁边的目标地址, 进去绑定一个邮箱 权限系统 本项目采用基于角色的权限控制系统(RBAC)。 角色配置 新用户默认角色由皇帝在个人中心的网站设置中配置: 公爵:新用户将获得临时邮箱、Webhook 配置权限以及 API Key 管理权限 骑士:新用户将获得临时邮箱和 Webhook 配置权限 平民:新用户无任何权限,需要等待皇帝册封为骑士或公爵 角色等级 系统包含四个角色等级: 皇帝(Emperor) 网站所有者 拥有所有权限 每个站点只能有一个皇帝 公爵(Duke) 超级用户 可以使用临时邮箱功能 可以配置 Webhook 可以使用创建 API Key 调用 OpenAPI 可以被皇帝贬为骑士或平民 骑士(Knight) 高级用户 可以使用临时邮箱功能 可以配置 Webhook 可以被皇帝贬为平民或册封为公爵 平民(Civilian) 普通用户 无任何权限 可以被皇帝册封为骑士或者公爵 角色升级 成为皇帝 第一个访问 /api/roles/init-emperor 接口的用户将成为皇帝,即网站所有者 站点已有皇帝后,无法再提升其他用户为皇帝 角色变更 皇帝可以在个人中心页面将其他用户设为公爵、骑士或平民 权限说明 邮箱管理:创建和管理临时邮箱 Webhook 管理:配置邮件通知的 Webhook API Key 管理:创建和管理 API 访问密钥 用户管理:升降用户角色 系统设置:管理系统全局设置 系统设置 系统设置存储在 Cloudflare KV 中,包括以下内容: DEFAULT_ROLE: 新注册用户默认角色,可选值为 CIVILIAN、KNIGHT、DUKE EMAIL_DOMAINS: 支持的邮箱域名,多个域名用逗号分隔 ADMIN_CONTACT: 管理员联系方式 MAX_EMAILS: 每个用户可创建的最大邮箱数量 皇帝角色可以在个人中心页面设置 发件功能 MoeMail 支持使用临时邮箱发送邮件,基于 Resend 服务。 功能特性 临时邮箱发件:可以使用创建的临时邮箱作为发件人发送邮件 角色权限控制:不同角色有不同的每日发件限制 支持 HTML:支持发送富文本格式邮件 角色发件权限 角色每日发件限制说明皇帝 (Emperor)无限制网站管理员,无发件限制公爵 (Duke)5封/天默认每日可发送5封邮件骑士 (Knight)2封/天默认每日可发送2封邮件平民 (Civilian)禁止发件无发件权限提示:皇帝可以在个人中心的邮件服务配置中自定义公爵和骑士的每日发件限制。配置发件服务 获取 Resend API Key 访问 Resend 官网 注册账号 在控制台中创建 API Key 复制 API Key 供后续配置使用 配置发件服务 皇帝角色登录 MoeMail 进入个人中心页面 在"Resend 发件服务配置"部分: 启用发件服务开关 填入 Resend API Key 设置公爵和骑士的每日发件限制(可选) 点击保存配置 验证配置 配置保存后,有权限的用户在邮箱列表页面会看到"发送邮件"按钮 点击按钮可以打开发件对话框进行测试 注意事项 Resend 限制:请注意 Resend 服务的发送限制和定价政策 域名验证:使用自定义域名发件需要在 Resend 中验证域名 反垃圾邮件:请遵守邮件发送规范,避免发送垃圾邮件 配额监控:系统会自动统计每日发件数量,达到限额后将无法继续发送 配额重置:每日发件配额在每天 00:00 自动重置 三、Cloud-Mail image图片 image图片 部署文档:https://doc.skymail.ink/ 首先你要注册一个域名,如果你要拿来注册一些网站或者游戏比如 steam 不要用 top xyz 这种廉价域名有可能会网站被当临时邮箱拦截 1 绑定域名 注册账号登录到 cloudflare 控制台,开始绑定域名(如果你已经绑定好了可以直接跳到第二步) 图片 图片 选择免费的计划 图片 图片 设置 dns 图片 不同的厂商的修改 dns 都差不多,这里以华为云为例 图片 设置完成后可能要等几分钟,期间可以刷新浏览器看有没有完成 图片 完成后的界面 图片 这样子账户主页就会显示你的域名了,域名绑定完成 图片 2 创建 worker 项目 到项目仓库 fork 项目代码到你的仓库 图片 图片 这样子仓库就会复制到你那边了 图片 回到 cloudflare 控制台,找到 workers 页面导入你的 github 仓库代码 图片 图片 图片 设置启动目录 图片 等待构建部署完成 图片 构建完成后的页面 图片 这时候项目就会出现在 worker 列表了,点击名字进入可以查看和设置 图片 3 设置环境变量 服务还需要设置一些环境变量和绑定数据库才能正常运行 图片 添加以下变量,注意 domain 是 json 类型的,管理员账号之后需要你在注册页面注册 变量名值类型作用domain["你的域名"], 示例:["mornglow.top"],多域名 ["doamin1","domain2"]JSON网站会使用这个域名作为邮箱域名admin管理员的邮箱,示例:admin@mornglow.top纯文本对应的用户变成管理员jwt_secret随便输入一串字符串,示例:Z7f!xPq8mV@L2bC$r9X&N1t纯文本登录身份令牌的安全密钥图片 设置完成自定义域名和环境变量的样子 图片 4 绑定数据库 找到左侧菜单存储和数据库,创建 kv 数据库,数据库名字随意 图片 创建 d1 数据库,数据库名字随意 位置选择离你近的地方 图片 回到 worker 设置界面绑定刚刚创建的数据库 d1 数据库 变量名为 db kv 数据库 变量名为 kv 图片 浏览器输入 https:// 你的自定义域名 / api/init / 你绑定的的 jwt_secret 会自动初始化数据库 (如果之前部署过只会更新不会覆盖原有数据) 图片 浏览器输入你绑定的自定义域名网站已经能打开了,注册登录了 图片 5 启用邮件接收 设置完成后才能接收邮件了 回到 cloudflare 控制台,点击菜单账户主页,再点你的域名 图片 菜单栏会发生变化 图片 图片 图片 启用电子邮件 图片 图片 设置转发到 worker 图片 图片 设置完成的样子 图片 测试接收邮件 图片 6 附件收发 设置完这一步后才能接收附件和发送附件,如果你不需要可以跳过 回到上一级菜单,找到 r2 对象存储,创建存储桶 图片 桶名字可以随便填 位置选择离你近的地方 图片 设置自定义域名 图片 图片 自定义域名添加到项目设置里面 图片 回到 worker 绑定刚才创建的 r2 存储桶 r2 存储桶 变量名为 r2 图片 7 邮件发送 使用第三方服务 resend 发送邮件 浏览器输入 resend.com 注册 图片 添加域名 图片 图片 图片 图片 等待验证完成 图片 验证完成后的样子 图片 创建 apiKey 图片 图片 图片 回到项目网站设置 图片 设置邮件状态回调接口 图片 回调接口 https:// 你的项目自定义域 / api/webhooks 图片 图片 8 人机验证 设置这一步后可以开启人机验证,防止网站被机器人批量注册 菜单栏找到 turnstile 图片 图片 添加你的域名 图片 名字随意 图片 复制这两个密钥 图片 回到项目设置页面设置密钥 图片 9 TG 和其他邮箱转发 在 TG 搜索找到这个人 图片 创建机器人并且获取 token 图片 给机器人一条发消息 图片 浏览器输入 https://api.telegram.org/bot 你的机器 TOKEN/getUpdates 获取 chat_id 如果获取不到就再给机器人发几条消息 图片 设置 token 和 chat_id 图片 转发到其他服务商邮箱 在 cloudflare 验证邮箱 图片 设置邮箱 图片 四、freemail image图片 image图片 image图片 image图片 功能特性 现代化界面 毛玻璃效果:采用现代化的毛玻璃(Glassmorphism)设计风格 简约美观:浅色背景,动态渐变,视觉效果出色 响应式设计:完美适配桌面和移动设备 动画效果:平滑的过渡动画和微交互反馈 邮箱管理 智能生成:随机生成临时邮箱地址,支持自定义长度和域名 历史记录:自动保存历史生成的邮箱,方便重复使用 便捷删除:支持删除单个邮箱和批量管理 一键切换:快速在不同邮箱间切换 用户管理功能 角色与权限: 三层权限模型(严格管理员 Strict Admin / 高级用户 Admin / 普通用户 User),严格管理员拥有全部权限 用户列表: 查看用户名、角色、邮箱上限/已用、是否允许发件、创建时间等关键信息 用户邮箱: 查看指定用户名下的邮箱列表,支持一键复制邮箱地址 创建用户: 通过用户名/密码/角色创建新用户 编辑用户: 支持改名、重置密码、角色切换、发件权限开关、调整邮箱上限 分配邮箱: 批量为用户分配邮箱地址(支持多行粘贴,自动格式校验) 删除用户: 解除用户与邮箱的绑定关系(不会删除邮箱实体与邮件数据) 前端权限防护: 管理页进入前进行快速鉴权,未授权自动跳转,避免内容闪现 操作确认与反馈: 关键操作提供二次确认弹窗与统一 Toast 提示,操作状态与结果清晰可见 邮件功能 实时接收:自动接收和显示邮件,支持HTML和纯文本 自动刷新:选中邮箱后每8秒自动检查新邮件 智能预览:自动提取和高亮显示验证码内容 详细查看:优化的邮件详情显示,支持完整内容渲染 一键复制:智能识别验证码并优先复制,或复制完整邮件内容 灵活删除:支持删除单个邮件或清空整个邮箱 发件支持(Resend) :已接入 Resend,可使用临时邮箱地址发送邮件并查看发件记录(发件箱),支持自定义发件显示名(fromName)与批量/定时/取消等能力 一键部署 Deploy to Cloudflare Workers图片Deploy to Cloudflare Workers 1. 首先点击 Deploy to Cloudflare 2 登陆账号后会进入,推荐选择亚洲地区(当然不选择亚洲也没关系) 不要修改数据库名称和R2名称 可能导致无法查询 图片 3. 点击创建部署,然后耐心等待克隆部署 图片 4. 点击继续处理项目,绑定必须的环境变量 图片 环境变量说明 变量名说明必需TEMP_MAIL_DBD1 数据库绑定是MAIL_EMLR2 存储桶绑定,用于保存完整的邮件 EML 文件是MAIL_DOMAIN用于生成临时邮箱的域名,支持多个,使用逗号或空格分隔(如 iding.asia, example.com)是ADMIN_PASSWORD后台访问密码(严格管理员登录)是ADMIN_NAME严格管理员用户名(默认 admin)否JWT_TOKEN / JWT_SECRETJWT 签名密钥(二选一,推荐 JWT_TOKEN)是RESEND_API_KEYResend 发件 API Key。使用发件功能需要配置否FORWARD_RULES邮件转发(转发到指定邮箱)。支持两种格式:JSON 数组 或 逗号分隔 KV否图片 5. 添加完成后点击部署即可 注:这三个变量是必须的,其他变量例如 管理员名称,发邮件密钥可自行决定是否添加 最后就可以打开对应的 worker 连接登陆了 图片 6. 默认管理员账号为 admin 7. 记得将域名邮箱的 catch-all 绑定到 worker 上(不绑定无法接收到邮件) 进入域名的 Email Routing 设置 添加 Catch-all 规则 目标设置为 Worker: temp-mail-worker 图片/idingi 8、设置自定义域名(可选) 在 Worker 设置中添加自定义域名,或使用 workers.dev 子域名。 9、FORWARD_RULES 示例 说明:规则按前缀匹配,命中第一个前缀即转发;* 为兜底规则。未配置或设置为空/disabled/none 时不进行任何转发。 逗号分隔(KV): FORWARD_RULES="vip=a@example.com,news=b@example.com,*=fallback@example.com" JSON 数组: FORWARD_RULES='[{"prefix":"vip","email":"a@example.com"},{"prefix":"*","email":"fallback@example.com"}]' 仅指定某些前缀(无兜底): FORWARD_RULES="code=a@example.com,login=b@example.com" 禁用转发: FORWARD_RULES="" 或 FORWARD_RULES="disabled" 或 FORWARD_RULES="none" 或 FORWARD_RULES="[]" 转发的目标地址需要在 Cloudflare 的 Email Addresses 中添加/验证 注意事项 静态资源缓存:Workers + Assets 对静态文件可能有缓存。更新 index.html 后如未生效,请在 Cloudflare 控制台进行 Purge Everything,并在浏览器执行强制刷新(Ctrl/Cmd+F5)。 图标路径:favicon 建议使用相对路径(例如 favicon.svg),避免挂在子路径时 404。 邮件路由:若需接收真实邮件,请正确配置 Cloudflare Email Routing(MX 记录、Catch‑all → 绑定到 Worker)。 R2 存储:R2 用于保存完整的邮件 EML 文件,支持邮件下载功能。R2 有免费额度限制,建议定期清理过期邮件。 数据库与费用:D1 有免费额度限制;建议定期清理过期邮件以节省存储空间与额度。 安全:务必在生产环境修改 ADMIN_PASSWORD、JWT_TOKEN,并限制仓库/项目的敏感信息暴露。 Resend 教程(发件) 1. 在 Resend 绑定并验证发信域名 登录 Resend 后台,进入 Domains,点击 Add Domain。 按向导添加你的发件域名,并在 DNS 处添加相应记录,待验证通过。 示意图(流程参考): 图片 图片 图片 图片 图片 完成后,确保域名状态为 Verified。发件地址必须使用该已验证域名,例如:no-reply@yourdomain.com 2. 创建 Resend API Key 进入 Resend → API Keys,点击 Create API Key。 建议选择可读写权限(Emails: send/read/update),并妥善保存生成的 Key。 参考截图: 图片 图片 图片 3. 在 Cloudflare Workers 配置变量 本项目运行在 Cloudflare Workers,需把密钥配置为 Secret,域名配置为普通变量。 方式一:命令行(Wrangler) # 设置 Resend 密钥(Secret) wrangler secret put RESEND_API_KEY # 或者使用下面同义变量(不推荐):RESEND_TOKEN / RESEND # 设置普通变量(可写入 wrangler.toml 的 [vars]) # 多域名用逗号/空格分隔 # 例:MAIL_DOMAIN="iding.asia, example.com"方式二:Dashboard(Git 集成部署常用) 进入 Cloudflare Dashboard → Workers → 选中你的 Worker → Settings → Variables。 在 Secrets 添加 RESEND_API_KEY。 在 Variables 添加 MAIL_DOMAIN,值为你用于收取 / 发件的域名列表(需与 Resend 已验证域名一致)。 4. 关联项目并部署 # 本地开发 wrangler dev # 正式部署 wrangler deploy确保 wrangler.toml 已绑定 D1 数据库与静态资源(仓库已配置)。 5. 前端使用发件功能(发件箱) 在首页先生成或选择一个邮箱地址。 点击 “发邮件”,填写收件人、主题与内容,点击发送。 后端会调用 Resend API 发出邮件,并在数据库记录,前端可在 “发件箱” 查看记录与详情。 注意: 发件地址为当前选中邮箱(形如 xxx@你的域名)。你的域名需在 Resend 已验证。 若返回 未配置 Resend API Key,说明没有设置或没有以 Secret 形式提供 RESEND_API_KEY。 6. 常见问题 403/Unauthorized:域名未验证或 From 与已验证域名不一致。 429 / 限流:短时间大量请求,稍后重试或开启队列。 中文 / HTML 内容:本项目会将 HTML 直接提交给 Resend,同时自动生成纯文本版本,提升兼容性。 7. 相关后端接口 POST /api/send 发送单封邮件 GET /api/sent?from=xxx@domain 获取发件记录列表 GET /api/sent/:id 获取发件详情 DELETE /api/sent/:id 删除发件记录 以上接口由 src/apiHandlers.js 与 src/emailSender.js 实现,调用 Resend REST API 完成发件 / 查询 / 取消等操作。 故障排除 邮件接收不到 检查 Cloudflare 邮件路由配置是否正确 确认域名的 MX 记录设置 验证 MAIL_DOMAIN 环境变量配置 数据库连接错误 确认 D1 数据库绑定名称为 TEMP_MAIL_DB 检查 wrangler.toml 中的数据库 ID 是否正确 运行 wrangler d1 list 确认数据库存在 登录问题 确认 ADMIN_PASSWORD 环境变量已设置 检查 JWT_TOKEN 或 JWT_SECRET 配置 尝试清除浏览器缓存和 Cookie 界面显示异常 确认静态资源路径配置正确 检查浏览器控制台是否有 JavaScript 错误 验证 CSS 文件加载是否正常 自动刷新不工作 确认已选中邮箱地址 检查浏览器是否支持 Page Visibility API 查看网络连接是否稳定 调试技巧 使用 wrangler dev 进行本地调试 查看 Worker 的实时日志:wrangler tail 使用浏览器开发者工具检查网络请求 检查 D1 数据库中的数据:wrangler d1 execute TEMP_MAIL_DB --command "SELECT * FROM mailboxes LIMIT 10"
技术搬砖
# Cloudflare
# 临时邮箱
# Catch
# Resend
admin
9月23日
0
12
0
2025-09-20
可托管cloudflare免费域名泛域名解析教程
image图片 一、需双向解析的免费域名 https://x10hosting.com/ 注:60 天不活跃会删号 elementfx.com x10.mx https://www.cloudns.net/ 注:域名没有解析访问会删除 cloudns.club dnsabr.com ip-ddns.com cloudns.cX cloudns.eu cloudns.in cloudns.info ddns-ip.net dns-cloud.net dns-dynamic.net cloudns.nz cloudns.org ip-dynamic.org cloudns.ph cloudns.pro cloudns.pw cloudns.us 二、泛域名解析教程(以x10为例) 1、x10添加NS记录 @(用于 CF 验证),两个 ns 记录都要改成 cf 的,框选起来的 "." 要留着 image图片 _acme-challenge(用于证书申请),新增两个 NS 记录,名称: "_acme-challenge" ,值: CF 给的两个NS域名,一样要加点 image图片 2、x10添加CNAME记录 * 指向优选域名,比如cloudflare.182682.xyz,这样就成功泛解析了,以后只需要在cloudflare添加dns解析即可使用,而且还是Cloudflare的优选CDN网络 最后的记录应该长这样: image图片 3、托管Cloudflare 与顶级域名托管到Cloudflare步骤一致,但添加子域名解析时,一定要设置仅DNS,不能开小黄云
技术搬砖
# Cloudflare
# x10hosting
# cloudns
# 双向解析
admin
9月20日
0
28
0
2024-08-13
使用阿里云 OSS 存储服务 + CloudFlare 配置图床
image.png图片 前言 带宽联盟是 Cloudflare 推出的一项服务,由一群具有前瞻性思维的云服务和网络公司组成,致力于为共同客户降低或免除数据传输(带宽)费用。为什么能做到非常低甚至能免除成本呢?云厂商跟 Cloudflare 直接的数据传输,是通过专用网络接口 (PNI) 或专用互连的,中间不经过任何网络提供商(比如电信),既然是直连,那么就不存在 PNI 的增量成本了,自然也就便宜了。虽然阿里云不是第一批加入带宽联盟的,但是到现在为止也加入一年多了(我白嫖也一年多了),并推出了 Cloudflare+Alibaba Cloud OSS 的解决方案。这点还是非常良心的,虽然腾讯云后来也加入了,但是我觉得不够“清晰透明”,就一直没试过。 虽然有时候 Cloudflare 是“减速 CDN”,但是既然咱选择了白嫖,那么就要贯彻到底了,对于有海外业务的小伙伴来说,这样反而能省下不少的开销 存储费用 根据存储费用文档,我们可以了解到,在海外(部分)区域,标准存储(本地冗余)容量支持使用5 GB/月的免费额度(即每月标准存储(本地冗余)容量≤5 GB时,不收取标准存储(本地冗余)容量费用)。 虽然不支持中国大陆免费 5GB 存储,不过并没有关系,支持的话我也不推荐你用,往下看就明白了。 流量费用 根据流量费用文档,我们可以了解到,在海外(部分)区域,外网流出流量(oss_flow_out)支持使用5 GB/月的免费额度(即每月外网流出流量≤5 GB时,不收取外网流出流量费用)。 有的小伙伴可能会好奇,既然可以免流,那这 5GB 外网流出流量还有什么用呢?看我上面那张图,你会发现,外网流出流量,无法做到完全没有。我每个月都有几 KB 的漏网之鱼,这还是我用量少的情况下,用的多自然就可能漏的多。原因就是你无法把缓存命中率做到 100%,可能我设置方式不是最优,但是能做到接近 100% 也就够了。但我们还需要防范直接打到源站的流量,这 5GB 相当于一个缓冲,如何防范打到源站,我下面也会讲。 请求费用 根据请求费用文档,算了没必要看了,请求费用是需要收费滴,不过好在便宜,几乎可以忽略不计。 想必有经验的小伙伴已经察觉到了,这套方案防 D 不防 C,不过方案是有平替的,只是各有优劣。但对于本身有这个需求的用户来说,确实能省钱。 最后,是 Cloudflare 这边的费用 对于阿里云来说,传输到 Cloudflare 是零出口费用。 有一点需要特别注意:出口传输费优惠或豁免可能需要与托管服务提供商注册,不适用于源于中国大陆的数据传输。也就是说,OSS 源站必须是海外节点,所以大陆节点没有免费 5GB 存储,其实无所谓的啦!主要操作流程 创建 Bucket:开通 OSS 并创建 Bucket。创建 Bucket 时选择海外的地域(如果在别的地域没有服务器的话,建议使用香港),存储类型选择标准存储即可,读写权限一定要选择私有,其余的附加服务按需启用(有的得加钱)。 image.png图片 但为了让图床正常使用,需要设置让Cloudflare的ip能够访问。 Cloudflare的ip官方已经给出了: IP Ranges 简单处理一下, 173.245.48.0/20,103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,141.101.64.0/18,108.162.192.0/18,190.93.240.0/20,188.114.96.0/20,197.234.240.0/22,198.41.128.0/17,162.158.0.0/15,104.16.0.0/13,104.24.0.0/14,172.64.0.0/13,131.0.72.0/22 配置访问权限:进入权限控制 -> Bucket 授权策略面板,添加授权,配置如下图。 image.png图片 配置 CDN:在 CloudFlare 的 DNS 管理面板添加 CNAME 记录,目标设为 Bucket 的域名(可以在 Bucket 的概览界面找到),代理状态设为已代理,否则 CDN 不起作用。 image.png图片 image.png图片 绑定域名:在阿里云的 Bucket 配置 -> 域名管理界面绑定你刚设置的域名,这时阿里云需要验证域名的所有权,按照其所说的在 CloudFlare 的 DNS 管理处添加指定 TXT 记录即可。 image.png图片 创建并添加证书:在 CloudFlare 的配置面板的 SSL/TLS -> 源服务器处,选择创建证书。创建之后会告诉你源证书与私钥,这个界面暂时不要动。打开刚才在阿里云控制台绑定证书的界面,选择证书托管,并上传 SSL 证书,这时会打开 SSL 证书的界面,选择上传证书,并将 CloudFlare 给出的源证书和密钥复制到上传证书的对应字段处(证书名字随便设),然后确定。这时切换回上传 SSL 证书,应该就能在证书名称处看到刚刚设置的证书名字了(看不到的话重开一下这个界面试试),选中,然后点下方的上传即可。 然后我们查看域名绑定配置,发现已经绑定上了。然后我们去上传一张照片。 image.png图片 image.png图片 自有域名选择自己配置好的解析域名,我们就可以看到 URL 已经变成咱们自定义的啦! 安全性配置 跨域设置:在阿里云 OSS 的数据安全 -> 跨域设置中创建跨域规则,来源设置为你的网站的地址。为了能让网站在本地测试时也能正常展示图片,建议同时添加localhost:*与127.0.0.1:*。 防盗链设置:和跨域设置类似。不同之处在于 Referer 是包含请求协议的,所以类似于example.org或localhost:*等不包括协议的配置是无效的,需要改为https://example.com或*://localhost:*;需要注意的是*.example.org虽然是有效的,但是没有指定 https 协议,安全起见最好改为https://*.example.org。 设置错误页:S3协议的bucket在公开读的权限下会默认展示桶内文件列表和路径,特征明显而且并不友好。绝大多数的对象存储都支持设置静态网站index.html和错误页404.html的设置,比如阿里云OSS在【基础设置】-【静态页面】下。这里随手找了两个单页供选择和参考 image.png图片 CloudFlare安全规则: image.png图片 PicGo 配置 PicGo 是一款快速上传图片到图床,并自动复制图片 URL 到剪贴板的工具,你可以在 Github 的 release 页获取该程序。 权限设置:在阿里云的权限控制 -> Bucket 授权策略面板新增授权,配置如下: image.png图片 如果当前没有 RAM 子帐号,请点击右上角头像 -> 访问控制,然后在左侧的身份管理 -> 用户处创建一个子帐号。创建完成后在子帐号的详情页创建 AccessKey,得到 AccessKey 的 KeyID 与 KeySecret,保留备用。 上传配置:打开 PicGo 主界面,在图床设置 -> 阿里云 OSS 内填写对应的表单项。“KeyID” 与 “KeySecret” 即刚才获取的子帐号 AccessKey 的 KeyID 与 KeySecret,“设定 Bucket” 为 Bucket 的名称,“存储区域” 为 Bucket 所在区域(与 Bucket 域名内的值统一,例如oss-cn-hongkong),自定义域名填写你设置的域名,其余两项按需填写即可。配置完成后点击确定并设为默认图床。 参考网站: https://blog.furffisite.link/p/imagebed-oss-conf https://blog.besscroft.com/articles/2022/distributed-storage-oss/
技术搬砖
# Cloudflare
# oss
admin
1年前
0
708
1
2024-07-30
不绑信用卡,设置 Cloudflare 团队账户(Zero Trust)
image.png图片 绑定或不绑定信用卡,申请 Cloudflare Zero Trust (团队账户)免费科学上网 Cloudflare 上网方式有三种。 1、warp 账户,默认开通送 1G 流量。 2、warp + 账户,相当于 warp pro 账户,通过关注 telegram 相关频道可获得 23.84PB 流量,这是多少?我给大家简单换算一下,1G 等于 1 千兆,1T 等于 1 千 G,1PG 等于 1 千 T)这些浏流量对于普通用户来说已经足足够用了, 3、但还有比这更好的方案,那就是使用团队账户上网,如果开通了 teams 团队账户(Zero Trust 账户),就相当于获得了无限的流量。 第一步:注册 Cloudflare 账户 Cloudflare 注册对区域,邮箱没有要求,国内的 QQ 邮箱、163 邮箱都可注册 Cloudflare 账户,但得是真实的邮箱,能够接收验证邮件。 1、打开 Cloudflare 官网: image.png图片 2、输入邮箱和密码 image.png图片 3、验证邮箱: image.png图片 第二步:Zero Trust 设置 1、登录 CF 登录后,点击 Zero Trust 开始进入设置 image.png图片 2、输入团队名称 团队名称可任意起名,系统会验证是否重名。注册 Cloudflare 后第一次登陆,进入 Zero Trust 时会看到下面的页面。 image.png图片 如果已经添加过团队名称会看到下面的页面 image.png图片 3、选择免费计划(Free $0 / user / month) 输入团队名称后,点击 Next 进入付费计划选择页面,选免费计划。 image.png图片 图片 4、选择继续支付(proceed to payment) 这块不用担心,由于我们选择的是免费计划,输入信用卡信息点击支付时不会扣费。免费计划支持 50 个用户登陆访问。 image.png图片 5、添加支付方式 点 Add payment method 按钮进入支付信息填写页面 image.png图片 下面的步骤需要绑定信用卡,想绑定信用卡的朋友接着往下看,不想绑定信用卡的朋友跳到【第五步】 [](#89252ce1df494d9b88bd553d96488dc9 "6、添加支付信息")6、添加支付信息 信用卡需使用可以支付外币的信用卡,比如带 VISA/MASTER 标识的信用卡卡。 用户名称用汉语拼音填写,与信用卡一致,地址信息照实填写就行,也可以找一个虚拟地址。 image.png图片 图片 7、点下一步支付 这里我们可以看到,费用是零。这里也可看到,团队用户计划中,可以允许 50 个用户登陆访问。 image.png图片 第三步:设置客户端验证规则 1、Settings 进入客户端设置 点击 Settings,再点 WARP Client image.png图片 2、点击 Manage 进入客户端规则设置 注意:只有绑定了支付信息的用户,才能看到 WARP Client 下的 Manage 按钮。 image.png图片 3、点击 Add a rule 添加规则 在这里添加的规则面对的是想登录的客户端用户 image.png图片 4、设置用户登录规则 Rule name:规则名称,名称可以任意填写 Rule action:规则动作,保持默认(Allow) Selector:选择约束条件,这里选择以邮箱后缀最为约束条件(Emails ending in) Value:允许登录的邮箱后缀。如下图中添加了四个邮箱后缀,表示只有这四类邮箱才可以注册登录。 Save:添加完成后,一定要记得保存 image.png图片 第四步:下载客户端 Cloudflare 支持五种客户端,macOS、windows、iOS、Android、Linux 点 Downloads 进入客户端下载页面。也可打开 https://1.1.1.1 页面下载 image.png图片 image.png图片 第五步:无卡注册步骤 1、链接设备 从支付信息填写页面退出后,点击 My Team 下的 Devices 调出 Connect a device 按钮。第一次进入时看不到 Connect a device 按钮,需按照下面方法操作。 操作方法:先点击 My Team 下的 Users,再点击 Devices,如果没有出现,再次按顺序点 Users 和 Devices,直到 Devices 下出现 Connect a device 按钮,如下图所示。 image.png图片 2、添加验证规则 点击【 Connect a device 】打开添加登陆规则页面,点击【Create an enrollment policy】按钮 image.png图片 3、输入登陆规则 系统默认以邮箱后缀作为客户端的验证规则。这里填写需要验证的邮箱后缀(如:@hotmail.com),然后点 save 保存。 image.png图片 4、获取团队名称 点击页面中的 Windows 按钮,系统会自动打开一个页面,不用管。 image.png图片 image.png图片 5、复制团队名称 5.1、点击选项卡,返回之前的页面 image.png图片 5.2、返回后会看到团队名称。复制团队名称,复制完成后这个页面不要关闭,一直保持这个状态。 image.png图片 第六步:客户端设置 1、安装客户端 此处以 windwos 版安装为例。除了 Win 版,Cloudflare 还提供了 macOS、安卓版、苹果版、Linux 版。 安装非常简单,双击运行安装文件,按照提示点击下一步完成安装即可。 image.png图片 image.png图片 image.png图片 安装完成后,会在右下角看到一个类似云朵的图标。点击右下角的 Cloudflare 图标,按照提示点击下一步,并同意并接受协议。 image.png图片 image.png图片 image.png图片 2、设置团队账户(Zero Trust) 2.1、点击右下角 Cloadflare 图标,点击齿轮图标 image.png图片 2.2、添加偏好设置 image.png图片 2.3、点击账户→ 使用 Cloudflare Zero Trust 登陆 image.png图片 2.4、点下一步并同意隐私条款 image.png图片 image.png图片 2.5、输入团队名称并确定 image.png图片 2.6、发送验证码 输入要登陆的邮箱地址后,点击发送按钮(send me a code),系统会发一串验证码到这个邮箱。 image.png图片 2.7、接受验证码并验证 image.png图片 image.png图片 验证成功后 image.png图片 点击右下角的 Cloadflare 图标,稍等片刻后,图标由红色的 warp + 改为蓝色的 Zero Trust,注册完成。 image.png图片 点击按钮后显示已连接,表示已经成功联网,可以科学上网了。 image.png图片 绑定信用卡与未绑定的不同 绑定信用卡后,登陆账户可以随时编辑、修改、删除客户端登陆规则。未绑定信用卡的用户登陆后,无法看到已有的规则、虽然能添加规则,但无法修改和删除规则,添加规则操作不直观也不方便,操作相对繁琐。
技术搬砖
# Cloudflare
# warp
# zeroTrust
admin
1年前
0
5,154
0
2022-10-23
最新Cloudflare免费自选IP教程(非Partner)
一、写在开头 此方法需要启用Cloudflare for SaaS并添加付款信用卡(支持银联)或PayPal 至少要有2个域名,一个做主域名:marisalnc.com,一个做回源:dnsht1.cf 源服务器:你真正要访问的IP地址,这台服务器供Cloudflare获取资源 二、添加域名到Cloudflare 把主域名和回源的域名添加到Cloudflare FAQ:当然你的主域名也可以在其他DNS注册商,华为云,阿里云等等都可以博主这里直接都用CF做演示 图片 三、进入"回源"域名设置页 1、添加源站DNS记录 图片 2、"回源"域名添加自定义主机名 依次点击左侧目录中的SSL/TLS ——> 自定义主机名,然后点击启用Cloudflare For Saas; 填写支付信息(支持银联卡和Paypal),会进行扣费验证(1美刀)然后立即退还; 在"回退源"一栏中输入回退域的子域名,点击"添加回退源" 图片 四、进入"主域名"域名设置页 注意:如果你的自选域名和回源域名都在Cloudflare则可以像我一样添加域名记录,反之请按照官方的方法去你主域名所在的域名解析商(华为云,阿里云)添加"TXT"记录 添加完刷新自定义主机! 图片 图片 等待状态变为有效后,开始自选IP;记得每年更新一次证书! 注意:证书有效后主域名删除上面主域名添加的记录!别把源域名的自定义主机删了。 五、自选IP 1、把主域名接入到支持分运营商解析的服务商(已接入请跳过),这里推荐几个免费的:华为云DNS,青云DNS【推荐做法,也可直接使用CloudFlare】 2、使用以下脚本来选择IP,记得用不同运营商的设备分别测一下: Cloudflare ST最出名的项目,功能强大但需下载对应系统和架构的可执行文件; Better Cloudflare IP基于bat和bash,简单,通用性强. 六、主域名指向自选的IP 删除刚刚添加的"TXT"验证记录和CNAME记录 把主域名指向自选的IP或者优选域名 注意:如果你的主域名在Cloudflare,这里代理状态要改为"仅限DNS" 方案一:CNAME记录指向已经优选IP的域名 本站优选域名:speed.marisalnc.com 图片 方案二:A记录指向已经优选IP 图片 七、测试访问及注意事项 **源站使用主域名的SSL证书,不要使用回源域名的SSL证书 主域名在Cloudflare可以直接使用15年的源服务器证书(注意:源服务器证书不是客户端证书!)** 图片 图片 注意事项: 删除"源域名"的自定义主机名将导致"主域名"回源(无法访问) 不能把"主域名"CNMAE到"源域名",如:a.com(主)CNAME b.com(源),这样写主域名和源域名都可访问达不到自选效果,这个仅作为一开始的证书验证,验证完证书主域名请删除这两个验证记录 记得要定期检查自选的IP是否可用
技术搬砖
# Cloudflare
# 自选ip
admin
3年前
0
10,198
3