看文章之前先看标题:
究极费事
并非一般的费事,原本想把它的部署过程和65生成器和在线剪贴板(含文件共享)一起写的,想了下,还是先写这篇。剩下两个反而很简单。
项目原作者听说在站内,看到这行字请回复一下,非常感谢。
好像是这位? eoao (eoao) · GitHub
原作者也写了一个教程,在这里,不过我自己部署的时候发现有些东西不大好整,故写这一篇文章。
说人话:水
话不多说,开始!
[!abstract]准备材料
- 未被封禁的 Cloudflare 账户
- 未被封禁的 GitHub 账户
- 域名(一级二级都行,主要必须是能托管到cloudflare)
- 有耐心的你
- 大把的时间
- [可选,用于接入L站登录]未被封禁 LINUX DO 账户
- [可选,运气好的话不需要]良好的网络环境,应该都懂我在说啥
- [可选,用于收发文件测试]其他能正常收发邮件的邮箱
前期步骤:绑定你的域名到Cloudflare,这不是重点,想必各位佬友应该都会。
首先登录GitHub,然后打开作者的GitHub仓库,随后点击fork(如图)。
[!tip]
一般情况下,这个项目不会与你已有项目重名,直接用已有名称即可,如有,请更改名称(改哪个无所谓,如果不重要的话也可以删掉原来的重名项目)
处理完所有问题之后,点击Create fork。
[!tip]
注:图片仅供示例,不要照抄,这张图是我用别的项目作示例截的。
打开Cloudflare的仪表板并登录,如果忘了绑定域名的现在去绑定还不晚,绑过了就请忽略这句话,点击左侧边栏的计算与AI → Workers 和 Pages
接下来,点击
创建应用程序,然后点击Continue with GitHub。[!tip]
Cloudflare 账户没绑 GitHub 的此时会弹出绑定窗口,绑定即可,不建议改设置因为以后可能还会用到,待网页加载完毕后点击授权即可,绑定过的佬友跳过此步骤。
选择刚才fork的项目,然后点击下一步
项目名称一般情况下不用改。
拉到底下,点击
高级设置,把路径修改为/mail-worker,然后点击“部署”。稍等片刻即可部署完毕。部署完毕后,回到Workers 和 Pages界面,找到刚才部署的应用,点击进入后点击设置。
下面开始进行一些操作:
- 修改为自己的域名。在
域和路由处,点击添加→自定义域→ 输入你的域名 (建议使用你绑定的域名的子域,如mail.linux.do,注意必须先绑定域名才能进行此操作) →添加域
完成之后,禁用默认的两个域。此后,请你用你的自定义域访问这个邮箱。
2.接下来,我们要配置一些变量,如下表。
| 变量名 | 值 | 类型 | 备注 |
|---|---|---|---|
| domain | 邮箱域名,示例:[“linux.do”]或[“linux.do”,“idcflare.com”] | JSON | 注意不是刚才设置的访问域名。同时,注意格式! |
| admin | 管理员邮箱 | 纯文本 | 等会记得用这个邮箱注册,才有管理员权限(邪修:可以随时改) |
| jwt_secret | 随机字符串,想写啥写啥,如 6512345abcd或Z7fxPq8mVL2bCr9XN1t | 密钥或纯文本 | 别用示例,这是安全密钥,不是管理员账户的密码,密码等一会还得自己设。此外,原作者的教程里这一项的类型是纯文本,因为这一项等一会还得用,实在记不住设成纯文本也行 |
| [可选]linuxdo_client_id | connect中的Client Id | 密钥 | 在L站connect创建应用后显示 |
| [可选]linuxdo_client_secret | connect中的Client Id | 密钥 | 同上 |
| [可选]linuxdo_callback_url | connect中设置的回调地址,如https//mail.linux.do/login ,此处linux.do是你的访问域名 | 纯文本 | 在L站connect创建应用时也需要填入 |
| [可选]linuxdo_switch | true或false | 纯文本 | 填true开启L站登录,不需要的话连带上面三个可选项删除即可,或者填false |
[!tip]
如果有佬友想要绑定L站登录后仅自用这个邮箱或直接使用L站登录管理员邮箱,建议先把L站登录做好,然后登录时直接使用L站登录并绑定管理员邮箱即可,有需要的话可以在绑定之后修改密码。
在侧边栏中找到 存储和数据库。
先点击
Workers KV,再点击右上角的Creatre Instance,新建一个KV。建议命名为cloud-mail-kv。再点击D1 SQL 数据库,点击 新建数据库,新建一个 D1 数据库。建议命名为cloud-mail-d1。
再次回到计算和 AI → Workers 和 Pages → 你刚创建的worker ,如图,A 和 B 都是一样的。找到后点击“添加绑定”。
接着会弹出如下界面,需要用的是图中画红圈的地方。
接下来直接分别
添加绑定即可。点击后,
KV 命名空间 和 D1 数据库 分别是你刚创建的东西,变量名称则必须一一对应。KV 的变量名称是kv,D1 的 是db
[!warning]提醒
看清变量名!!!
原作者文章为标红处理,请各位佬友看清楚,KV 对应变量名是 kv,d1 对应变量名是 db
打开新标签页,输入 https://设置的访问域名/api/init/你设置的jwt_secret进行初始化数据库,显示初始化成功即可。打开访问域名,即可进行注册(是的,管理员也得先注册,提前设置L站登录的话就可以直接一键登录并绑定了)
[!note]咳咳
不要告诉我你忘了你刚设置的jwt_secret了,要是真忘了还设成密钥看不了的话删掉重新设一个也行
再次打开Cloudflare的仪表板的首页,找你刚才要绑定的邮箱域名(可能与访问域名不一样,看你自己的设置),点进去,再在边栏找到 电子邮件 → 电子邮件路由,点击 开始使用 ,然后点击 跳过入门指南
[!note]也许,有点小小的不一样?
如果直接显示添加电子邮件记录,可以直接添加,总之,马上你要启用电子邮件路由(但是不要绑定你的个人邮箱,那样会转发所有邮件到你的个人邮箱中)
启用电子邮件路由后,点击路由规则,在下面 Catch-all 地址中点击编辑,将操作改为 发送到 Worker,目标改为你刚才设置的worker,然后保存。确保状态为活动。
至此,本文基础部分完成,如果你只是想把它当做一个正常的临时邮箱用,到这里其实就足够了,如果想接收附件甚至发送右键,下面还有。
[!info]
建议直接用kv,R2存储还要绑卡,不要绑验证卡,会封号
其他兼容存储不好设置,爪云整了老长时间没成,等下一次我讲讲用爪云的对象存储的在线剪贴板
这里直接以kv为例(最简单哈哈哈,R2方案见原作者的教程),登录你刚注册的管理员账号,点击 系统设置 ,然后打开 KV 存储,再将访问域名设置为你的访问域名(就是你访问这个邮箱的域名,这一步的必要性有待商榷但是填上没有事哈哈哈)
这个时候,你就可以用其他邮箱向这个邮箱发一个带附件的邮件,然后看看效果。(注:一定是带附件,而不是图片链接)
如果,你还想发送邮件,那就麻烦了。
二级域名易踩坑,三思而后行
打开 resend.com ,注册,建议GitHub或谷歌一键登录。随后点击 Domains。
然后点击
Add domains,输入邮箱域名(不是访问域名),然后选择一个区域(日本之类就可以)。点击下一步,会让你添加记录。鼠标放在对应指后面可以复制。如果这时候出现 Cloudflare 一键导入,建议你直接一键导入。如果不行,再删除记录看下面的提示。(我的一直没触发这个一键导入,不知道为什么)
开始有坑了!用二级域名的注意!
二级域名手动添加记录时建议补全所有记录名,然后再在每个记录名后面加上一个.(英文句号)
[!info]为啥?
因为这个系统会默认你是一级域名的二级域名去注册这个系统,但是 Cloudflare 认为你是一级域名(不大严格,毕竟能添加进去)。所以这个系统让你添加的记录长这样:
当然,你要是直接把记录名写为 send 好像也没毛病,但是建议写成 send.二级域名.(注意最后那个英文句号),这样的话 Cloudflare 就会强制认为这是完整的记录。
鬼知道我在这上面花了多长时间
累了,添加dns记录不放图了(也懒得拿原作者的图),口述下路径在 Cloudflare的仪表板 → 你的邮件域名 → DNS → 记录 ,添加完记录回去点完成,或者刷新下就行了。
实在不知道错在哪了,直接打开 dns.email ,输入你的邮箱域名,有指导(有指导也请看上面的操作提示,因为你可能会忽略)
验证完成(界面变绿)之后,再点击边栏中的 API Keys,创建API Keys,名字自己定,记得保存密钥因为只显示一次。然后点击 Webhooks ,创建 Webhooks,权限和链接如下。。
权限:
email.bounced
email.complained
email.delivered
email.delivery_delayed
email.failed
链接:
https://邮箱域名/api/webhooks
最后,再回到你的访问域名,找到 系统设置,点击Resend Token,选择对应的域名,将刚才的 API Keys填入并保存就行了。
此外,还有人机验证/TG Bot等玩法自行到原作者的教程里摸索,我是实在搞不动了,就靠各位佬友们了。
[!success]成功了!也许还有点注意事项……
登录背景等可以在系统设置里改
自用记得关掉注册[!note]- 如果你突然想给管理员加上L站登录……
事实上,如果你一开始没加L站登录的话,到这里你的管理员账户就已经注册好了,而我又没发现哪里可以手动绑定L站登录的地方,于是……
先开启注册(注册码最好也关一下),随后退出登录,然后在workers的变量设置处将管理员更改为一个没有注册的邮箱(如果你没有把这项设置为密钥的话,如果设置成密钥请删掉重设),接着回去注册这个管理员邮箱(不要一键登录),然后在管理设置里删掉前管理邮箱,再退出,L站一键登录,登录后再回到workers里把管理员邮箱改回你L站登录的号,再登录并删掉那个另外的邮箱。这样就完成了。如果自用,请一并关闭注册。
非常不隆重的致谢
感谢:
这个项目的原作者和所有贡献者 @neo @6512345 @Fengfeng10 @xuanxu @is_hp (坏了,怎么又让 @is_hp 水了一帖 )
更新:
有人提醒原作者帖子好像是下面这个。一并感谢。
累死我了。























