部署指南
本项目天生为 Cloudflare Pages 设计,可以一键部署,享受全球 CDN 加速和无服务器的便利。
1. Fork 本仓库
首先打开 https://github.com/imzyb/MiSub 点击项目页面右上角 Star(点个星星!) 然后点击 Fork 按钮,将此项目复制到你自己的 GitHub 仓库中。
Fork 本仓库
2. 创建 Cloudflare Pages 项目
登录 Cloudflare 控制台,进入 Workers & Pages。
Workers & Pages
选择“创建应用程式” -> “Pages” -> “导入现有 Git 存储库”。
导入现有 Git 存储库
选择 Fork 的仓库
在 “构建设置和部署” 页面,构建设定如下:
框架预设:
Vue(选择后,下方自动填写)构建命令:
npm run build构建输出目录:
dist点击“保存并部署”。
构建部署
3. 绑定存储资源
存储类型选择指南
MiSub 提供 Cloudflare KV 和 D1 数据库两种存储方案,你可以根据自己的需求灵活选择 (不管你选 KV 还是 D1 ,KV都是优先必须设置的,否则无法正常使用。)
如何选择:
新用户: 建议直接配置 D1 数据库,避免后续遇到写入限制,省心无忧。
现有用户: 如果遇到 KV 写入限制,可使用内置迁移工具迁移到 D1,提升使用体验。
轻度使用: 如果你不频繁更新订阅和节点,KV 存储完全够用,且配置更为简单。
重度使用: D1 数据库是最佳选择,提供无写入限制的流畅体验,适合管理大量订阅和节点。
3.1 绑定 KV 命名空间(必须)
不管你选 KV 还是 D1 这个必须设置,否则无法正常使用。
在项目创建完成后,首先去创建一个你自己的 KV 命名空间。
创建 KV 命名空间
创建完成,进入该项目的“设置” -> “绑定” -> “KV 命名空间”。
变数名称 (Variable name):
MISUB_KVKV 命名空间 (KV namespace): 选择刚创建的 KV 命名空间。
绑定 KV 命名空间
3.2 绑定 D1 数据库(可选,推荐)
如果你希望使用 D1 数据库来避免 KV 写入限制,请按以下步骤操作:
创建 D1 数据库:
创建 D1 数据库,名称随意,点击创建。
创建 D1 数据库
创建数据库表结构:
可以看到 你的数据库已成功创建! ,我们点击右上角的 Explore Data
Explore Data
来到 D1 数据库的 Query 界面,手动执行
schema.sql中的 SQL 语句,原地址:https://github.com/imzyb/MiSub/blob/main/schema.sql 可以不用看原地址,我下面贴出来。创建第一个表,粘贴到 Query 编辑框中,然后点击蓝色 RUN 按钮。你应该能看到 左侧出现了一个 subscriptions 表,如下图,依次执行不在贴图。
CREATE TABLE IF NOT EXISTS subscriptions (
id TEXT PRIMARY KEY,
data TEXT NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
);SQL
创建第二个表,清空 Query 编辑框 的内容,执行下方所有的代码。
CREATE TABLE IF NOT EXISTS profiles (
id TEXT PRIMARY KEY,
data TEXT NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
);创建第三个表,清空 Query 编辑框 的内容,执行下方所有的代码。
CREATE TABLE IF NOT EXISTS settings (
key TEXT PRIMARY KEY,
value TEXT NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
);然后看左侧列表。 三张都齐了,最后,清空 Query 编辑框 的内容,执行下方所有的代码。
CREATE INDEX IF NOT EXISTS idx_subscriptions_updated_at ON subscriptions(updated_at);
CREATE INDEX IF NOT EXISTS idx_profiles_updated_at ON profiles(updated_at);
CREATE INDEX IF NOT EXISTS idx_settings_updated_at ON settings(updated_at);SQL
这样你的 D1 数据库 就成功创建完成。
在项目设定中绑定 D1 数据库:
进入项目的”设置” -> “绑定” -> “添加” -> “D1 数据库”
变数名称 (Variable name):
MISUB_DBD1 数据库: 选择刚创建的数据库
绑定 D1 数据库
4. 设定环境变数
在项目的“设定” -> “环境变数”中,添加以下两个生产环境变数:
ADMIN_PASSWORD值: 设定一个你自己的管理员登录密码。
设定 ADMIN_PASSWORD
COOKIE_SECRET值: 设定一个用于加密 Cookie 的、足够长且随机的字串(例如,你可以使用密码产生器生成一个64位的随机字串)。随机密码生成器
生成 64位的随机字串
设定 COOKIE_SECRET
5. 部署完成!
完成以上设定后,回到“部署”选项卡,重新部署一次你的项目,使环境变量设置生效。现在,你的 MiSub 就可以通过 Cloudflare 提供所提供的域名访问了!你也可以自行设置自定义域名,更好记。
重新部署 使环境变量设置生效
简单使用
部署完成后,首要任务是进行全局设置。请打开你部署的 MiSub 项目地址,使用密码登录,然后点击右上角的“设置”按钮。
请务必先配置此处,因为这里的设置(如默认订阅格式、后端地址等)是所有功能的基石,并将作为最高优先级,被所有订阅组和订阅链接默认采用。
自定义订阅Token、订阅组分享Token:
简单来说,它就是让你给订阅链接自定义一个。 专属的、好记的“密码”或“名字” ,订阅组分享Token:比如,你给朋友一个链接。如果哪天不想让他用了,/zrfme/py 只需在后台改掉这个,这个名字为朋友,他手里的订阅链接就立刻失效了,而你自己的其他链接完全不受影响。
SubConverter后端地址:
后端地址默认是使用的肥羊的后端,我们可以自行设置一个 订阅转换前端后端 网站收集 这里的,都可以进行设置。你也可以使用我维护的 subapi.zrfme.com
数据迁移:
切换为 D1数据库 。(注意: 数据迁移是单向的,迁移后建议不要再切换回 KV 存储,以免数据不一致。)
配置 D1 数据库(参考上面的步骤 3.2,确保 D1 数据库已创建并绑定)。
登录管理界面,进入”设置”页面。
点击 迁移数据到 D1 数据 按钮。
确认迁移,系统会自动将数据从 KV 迁移到 D1。
迁移完成后,存储类型会自动切换为 D1 数据库。
切换 D1数据库
Telegram Bot:
设置成功后,每当 MiSub 自动或手动更新你的订阅时,它都会通过你自己创建的 Telegram 机器人,实时向你发送一条通知消息,你无需登录任何网站,只需看一眼 Telegram 消息,就能对自己的订阅状态了如指掌。
第一步:创建机器人并获取 Token
在 Telegram 中,搜索
@BotFather并开始对话(这是官方用来创建和管理机器人的机器人)。发送指令
/newbot给它。按照提示,依次为你的机器人取一个名字(例如
我的订阅助手)和一个用户名(必须以bot结尾,例如zrfsub_bot)。创建成功后,
@BotFather会发来一条包含 API Token 的消息。它是一长串字符,请完整复制下来,并且私聊一下你刚创建的机器人,避免收不到消息。
创建机器人并获取 Token
第二步:获取你的 Chat ID
在 Telegram 中,加入群组 https://t.me/lsmoo 并开始对话 群验证一定要做,机器人会给你发信息
发送指令
/id@KinhRoBot给它。机器人会立刻回复你的个人信息,其中就包含了你的 ID。它通常是一串数字,请复制下来。
获取你的 Chat ID
第三步:在 MiSub 中填写信息
回到 MiSub 的设置页面。
找到 Telegram Bot 相关的输入框。
将刚刚复制的 Bot Token 和 Chat ID 粘贴到对应的位置。
保存设置。
在 MiSub 中填写信息
第四步:机器人订阅通知
随便使用一个软件,更新订阅地址,就可以收到订阅被访问的通知啦。这个还有流量使用提醒。
机器人订阅通知

评论区