这是一个基于 Cloudflare Workers + D1 数据库 + KV 存储 的订阅聚合管理平台,提供自带 vless proxyip 节点 用户注册/登录、订阅管理、Tag-based 节点管理、节点池管理和订阅输出功能。
- 🔐 用户系统:完整的注册/登录/会话管理
- 📡 订阅管理:支持多种订阅源的导入和刷新
- 🏷️ Tag 系统:灵活的节点分类和管理
- 🎯 节点生成器:智能节点生成和扩展
- 📊 数据统计:实时的使用情况分析
- 🌐 多格式支持:Base64、Clash、Sing-box 等格式
- 📱 响应式设计:完美适配桌面和移动设备
在开始之前,您需要:
- ✅ 一个 Cloudflare 账户(免费即可)
- ✅ 下载本项目代码到本地
-
访问 Cloudflare:
- 打开浏览器,访问:https://dash.cloudflare.com
- 使用您的账户登录
-
进入 Pages 服务:
- 在左侧菜单中找到 Workers 和 Pages
- 点击进入 Pages 页面
-
开始创建:
- 点击 创建应用程序 按钮
- 选择 上传资产 选项
-
项目配置:
- 项目名称:输入
cfvless-admin(或您喜欢的名称) - 点击 创建项目
- 项目名称:输入
-
上传文件:
方法一:直接拖拽文件(推荐)
- 将以下 2 个文件放到一个目录里后,把目录拖放到上传区域:
index.html(主页面)_worker.js(后端逻辑)
方法二:使用打包文件(更简单)
- 将以下 2 个文件放到一个目录里后,把目录拖放到上传区域:
-
直接将 zip 包拖拽到上传区域,Cloudflare Pages 会自动解压
-
无需手动解压文件
- 点击 部署站点
- 等待部署:
- 系统会自动部署您的文件
- 完成后会显示访问地址,如:
https://cfvless-admin.pages.dev
-
返回主菜单:
- 在 Cloudflare Dashboard 左侧菜单
- 点击 Workers 和 Pages → D1
-
创建数据库:
- 点击 创建数据库 按钮
- 数据库名称:输入
subscription-db - 点击 创建
-
进入数据库控制台:
- 点击刚创建的
subscription-db数据库 - 选择右上角 expolore data
- 点击刚创建的
-
执行数据库初始化脚本:
- 在项目根目录找到
d1_init_single.sql文件 - 打开该文件,复制全部 SQL 语句内容
- 粘贴到 D1 控制台的查询编辑器中
- 点击右下角 Run 按钮旁边的下拉箭头
- 选择 Run all statements 执行所有语句
- 等待执行完成,系统会显示成功提示
- 在项目根目录找到
-
验证数据库创建结果:
- 初始化成功后,在查询编辑器中执行以下 SQL 命令:
SELECT name FROM sqlite_master WHERE type='table';
- 执行结果应显示以下 7 个核心数据表:
users- 用户信息表subscription_sources- 订阅源表node_pool- 节点池表subscriptions- 订阅记录表tags- 标签表node_tag_map- 节点标签关联表source_node_configs- 源节点配置表
-
访问 KV 页面:
- 在 Cloudflare Dashboard 左侧菜单
- 点击 Workers 和 Pages → KV
-
创建命名空间:
- 点击 创建命名空间 按钮
- 命名空间名称:输入
subscription - 点击 添加
-
返回 Pages:
- 在 Cloudflare Dashboard 中
- 进入 Workers 和 Pages → Pages
- 点击您的
cfvless-admin项目
-
进入设置页面:
- 点击 设置 标签
- 选择 函数 子标签
-
添加 D1 绑定:
- 在 D1 数据库绑定 部分
- 点击 添加绑定 按钮
-
配置绑定:
- 变量名:输入
DB(必须大写) - D1 数据库:选择
subscription-db - 点击 保存
- 变量名:输入
-
添加 KV 绑定:
- 在 KV 命名空间绑定 部分
- 点击 添加绑定 按钮
-
配置绑定:
- 变量名:输入
subscription - KV 命名空间:选择
subscription - 点击 保存
- 变量名:输入
-
保存所有设置:
- 确认两个绑定都已添加
- 点击页面底部的 保存 按钮
-
等待重新部署:
- 保存后,必须重新上传一次上面的 pages 的文件,必须重新部署一次,Pages 的刚才的设置才会生效!
- 等待部署完成(通常 1-2 分钟)
-
打开网站:
- 访问您的 Pages 地址:
https://你的 pages 域名.pages.dev - 应该能看到登录页面
- 访问您的 Pages 地址:
-
测试功能:
- 尝试注册一个新账户
- 登录并测试基本功能
如果网站无法正常工作:
-
检查绑定:
- 确认 D1 和 KV 绑定的变量名正确
DB(D1 数据库)和subscription(KV 命名空间)
-
查看日志:
- 在 Pages 项目中点击 函数 标签
- 查看实时日志了解错误信息
-
重新部署:
- 在 Pages 项目中点击 部署 标签
- 点击最新部署右侧的 重试 按钮
症状:访问 Pages 地址显示错误页面 解决方案:
- 检查 Pages 项目是否部署成功
- 确认域名配置正确
- 查看部署日志是否有错误
症状:注册或登录按钮无响应 解决方案:
- 确认 D1 数据库已创建并初始化
- 检查数据库绑定变量名是否为
DB - 验证数据库表结构是否正确
症状:某些功能无法使用 解决方案:
- 确认 KV 命名空间已创建
- 检查 KV 绑定变量名是否为
subscription - 重新部署项目
症状:控制台显示数据库错误 解决方案:
- 检查 D1 数据库状态
- 确认绑定配置正确
- 验证数据库权限设置
- 进入 Pages 项目
- 点击函数标签
- 查看实时日志输出
- 进入 D1 服务
- 选择数据库
- 查看表结构和数据
- 进入 Pages 项目设置
- 检查函数绑定
- 确认变量名和资源匹配
- 访问网站首页
- 点击"注册"按钮
- 输入用户名和密码
- 系统自动创建用户账户
- 输入用户名和密码
- 点击"登录"按钮
- 系统创建会话并跳转到管理界面
- 添加订阅源 URL
- 系统自动解析节点
- 支持手动刷新和更新
- 创建自定义标签
- 将节点分配到不同标签
- 支持批量操作
- 选择模板节点
- 配置生成参数
- 生成扩展节点
- 支持多种格式
- 实时更新节点列表
- 个性化订阅链接
v2.0 稳定版:下载 Release 包
- 📁 包含文件:
index.html+_worker.js - 🎯 开箱即用,无需额外配置
- 📱 支持直接拖拽 zip 包到 Cloudflare Pages
- ⚡ 自动解压,部署更简单
如果您想手动下载单个文件:
- index.html - 主页面文件
- _worker.js - 后端逻辑文件
项目内置了完整的 IP 段配置,支持自定义修改:
- 位置:在
index.html文件的第 1481 行附近 - 配置说明:
// 数据配置 - 内置IP段配置(可自定义修改) - 修改方法:
- 编辑
index.html文件 - 找到
dataByCountry对象 - 修改对应国家的 IP 段配置
- 支持添加、删除或修改 IP 段
- 编辑
- 格式要求:IP 段格式为
x.x.x.x/24(CIDR 格式) - 应用场景:根据实际需求调整节点生成的 IP 范围
"🇺🇸 美国 (US)": {
ipv4: [
"8.6.144.0/24", // 可修改
"8.6.145.0/24", // 可修改
"8.6.146.0/24" // 可修改
]
}项目支持自定义 ProxyIP 地址,用于节点代理:
- 位置:在
_worker.js文件的第 13 行附近 - 配置说明:
// ProxyIP 配置 - 用户可以修改为自己的 ProxyIP 地址 - 修改方法:
- 编辑
_worker.js文件 - 找到
const DEFAULT_PROXY_IP = "129.159.84.71"; - 修改为你的 ProxyIP 地址
- 编辑
- 支持格式:
- 单个 IP:
"your.proxy.ip" - 多个 IP:
"ip1,ip2,ip3"(用逗号分隔)
- 单个 IP:
- 应用场景:根据你的实际代理服务器配置调整
// 单个 ProxyIP
const DEFAULT_PROXY_IP = "your.proxy.server.com";
// 多个 ProxyIP(用逗号分隔)
const DEFAULT_PROXY_IP =
"proxy1.example.com,proxy2.example.com,proxy3.example.com";- 简单部署:只需 2 个文件,拖拽上传即可
- 自动配置:用户注册时自动创建默认配置
- 智能管理:Tag-based 节点分类管理
- 多格式支持:兼容主流客户端
- 响应式设计:完美适配各种设备
如果您在使用过程中遇到问题:
- 检查部署步骤:确保按照指南逐步操作
- 查看错误日志:在 Pages 函数标签中查看详细错误信息
- 验证配置:确认数据库和 KV 绑定正确
- 重新部署:绑定资源后需要重新部署
- 免费版限制:Cloudflare 免费版有使用量限制
- 数据备份:定期备份重要数据
- 安全设置:使用强密码保护账户
- 合规使用:遵守当地法律法规
项目地址: CFvless-ADMIN
最后更新: 2025 年 9 月
部署难度: ⭐⭐ (适合小白用户)