MakkaPakka 反代教程:Cloudflare Workers + D1 完整搭建详解
写在前面
𝙈𝙖𝙠𝙠𝙖𝙋𝙖𝙠𝙠𝙖频道 t.me/MakkaPakkaOvO
𝙈𝙖𝙠𝙠𝙖𝙋𝙖𝙠𝙠𝙖群组 t.me/MakkaPakkaGroupO_O
进群礼貌提问即可,本来想录制视频的发现录制出来需要反复暂停观看影响体验不如还是文字教程尽量详细点,如有问题可以群里@我修改。
不允许反代的服务器就不要反代了,影响他人体验。
准备阶段
1.Cloudflare账号
Cloudflare Dashboard | Manage Your Account(没有账号自行注册登录即可)

2.一个域名
立即注册 – DNSHE(推荐这个免费域名即可)

3.明文源码
https://t.me/MakkaPakkaGroupO_O/20069
改版 https://t.me/MakkaPakkaGroupO_O/26565(看最后)
𝙈𝙖𝙠𝙠𝙖𝙋𝙖𝙠𝙠𝙖群组置顶中自行搜索明文源码即可或者直接用上面链接自己跳转

备注:用记事本打开或者VS code打开
代码一定记得混淆!!!
教程
1.绑定托管域名

需要绑定TG、github或者邀请码 我的邀请码 G5Z2S9TD5Q4B

选择前三个根域名的任意一个,比如我选择ccwu.cc,然后输入一个记得住的前缀,确认注册


复制你申请域名,如leo1571.ccwu.cc,打开cloudflare,添加域名





将分配的DNS服务器填写到DNSHE里面



回到cloudflare,点击立即检查后刷新一下页面,并打开DNS记录


2.创建workes



随便输入一个名字点击部署

点击编辑代码

全选删除左边内容,把明文源码粘贴进去(CTRL+A全选粘贴)并点击部署



3.创建D1 SQL 数据库



4.添加自定义域名(可以不添加了 用路由里的域名直接进入即可)
返回workes,添加自定义域名


前缀+上面创建的域名

5.绑定 D1 空间与变量
返回workes,点击绑定,添加绑定



6.添加变量(以下内容找到后自己记录在记事本上)
1.CF_API_TOKEN





生成的令牌就是你的 CF_API_TOKEN

2.CF_ZONE_ID
点击黄色云朵回到主页,点击自己的域名

向下翻,找到区域id,就是CF_ZONE_ID

3.CF_DOMAIN
返回workes点击设置 点击添加

选择路由

路由里填写的fd.leo1571.ccwu.cc就是你的 CF_DOMAIN

4.ADMIN_TOKEN
自己设置一个密码 12345678 登录面板使用的 12345678就是你的 ADMIN_TOKEN
5.CF_ACCOUNT_ID
Account ID就是你的 CF_ACCOUNT_ID

6.CF_WORKER_NAME
embyfd就是你的 CF_WORKER_NAME

7.TG_CHAT_ID
telegrarm打开 @userinfobot,发送/start,返回的数字id就是你的 TG_CHAT_ID

8.TG_BOT_TOKEN
tg 搜索@BotFather发送/newbot
按照提示,给你的机器⼈起个显示名字(⽐如:Emby 反代),再起个⽤户名(必须以 bot 结
尾,⽐如 embyfd_bot)。
创建成功后,BotFather 会发给你⼀段包含 HTTP API 的极⻓字符串,图中红色部分这就是你的 TG_BOT_TOKEN

到这里,将上面生成的8个变量添加到变量和机密中


最后一步,添加一个A记录



电信:
172.64.52.124
162.159.58.65
移动:
104.25.246.239

如果有这个报错就去把自定义域名删掉,先添加A记录再重新添加自定义域名

好了现在打开你的自定义域名如:fd.leo1571.ccwu.cc,输入你创建的密码

打开网页需要代理软件打开,但是测速时一定要关闭!

然后打开代理软件 选择自己心仪的节点

设置指令
激活实时查询指令 Webhook(只需做⼀次)
为了让机器⼈在收到你发的信息时能通知 Worker,我们需要绑定⼀下 Webhook。
复制下⾯这个链接到记事本:
把 <这⾥换成你的BOT的Token> 和 <这⾥换成你的反代⾯板域名> 替换成真实的内容(注意去掉尖括号)。
https://api.telegram.org/bot<这⾥换成你的BOT的Token>/setWebhook?url=https://<这⾥换成你的反代⾯板域名>/api/tg-webhook
将替换好的完整链接,粘贴到你的浏览器地址栏中,按回⻋访问。
如果浏览器⻚⾯显示了 {"ok":true,"result":true,"description":"Webhook was set"},说明绑定成功!
享受成果!
现在,打开 Telegram,找到你在第⼀步创建的那个机器⼈点击 Start。
发送⼀句 /stats 他就会把当前数据发送给你啦
这是之前群友写的 我测试了 不需要激活,先用源码布置一次 然后直接用改版覆盖即可
每天中午 12:00 执行一次任务。
设置→触发事件→添加→Cron触发器→Core表达式→输入 0 12 * * *



后面的照抄的群友的 不要介意
Unsplash Image API | Free Photos & Illustrations API
用我的改版的代码 https://t.me/MakkaPakkaGroupO_O/26565 可以去上面的网站自己申请一个key填入变量 UNSPLASH_API_KEY

或者自己改下
async function getTgCoverUrl(_env) {
// 兜底固定图片:如果你原有的那张壁纸
const fallbackUrl = 'https://i.ibb.co/HL4cpd54/20260421104546-397-10.jpg';
try {
// 检查是否配置了 Unsplash API Key
if (_env.UNSPLASH_API_KEY) {
// 请求官方 API:限定搜索词为 landscape,nature (风景/自然),图片方向为 landscape (横图)
const unsplashUrl = `https://api.unsplash.com/photos/random?query=landscape,nature&orientation=landscape&client_id=${_env.UNSPLASH_API_KEY}`;
const _resp = await fetch(unsplashUrl);
if (_resp.ok) {
const _json = await _resp.json();
// urls.regular 的尺寸非常适合 Telegram 卡片展示
if (_json && _json.urls && _json.urls.regular) {
return _json.urls.regular;
}
} else {
console.error('Unsplash API 请求失败, 状态码:', _resp.status);
}
} else {
console.warn('未找到 UNSPLASH_API_KEY 环境变量,将使用默认背景图。');
}
} catch (_e) {
console.error('获取 Unsplash 图片代码执行异常:', _e);
}
// 如果未配置 Key、请求失败或发生异常,都会安全地返回这张兜底图
return fallbackUrl;
}
UNSPLASH_API_KEY
