Skip to content

samni728/cfvless-admin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌐 订阅聚合管理平台 - 部署指南

这是一个基于 Cloudflare Workers + D1 数据库 + KV 存储 的订阅聚合管理平台,提供自带 vless proxyip 节点 用户注册/登录、订阅管理、Tag-based 节点管理、节点池管理和订阅输出功能。

✨ 核心特性

  • 🔐 用户系统:完整的注册/登录/会话管理
  • 📡 订阅管理:支持多种订阅源的导入和刷新
  • 🏷️ Tag 系统:灵活的节点分类和管理
  • 🎯 节点生成器:智能节点生成和扩展
  • 📊 数据统计:实时的使用情况分析
  • 🌐 多格式支持:Base64、Clash、Sing-box 等格式
  • 📱 响应式设计:完美适配桌面和移动设备

🚀 部署指南(推荐)

📋 准备工作

在开始之前,您需要:

  • ✅ 一个 Cloudflare 账户(免费即可)
  • ✅ 下载本项目代码到本地

步骤 1:创建 Cloudflare Pages 项目

1.1 登录 Cloudflare Dashboard

  1. 访问 Cloudflare

  2. 进入 Pages 服务

    • 在左侧菜单中找到 Workers 和 Pages
    • 点击进入 Pages 页面

1.2 创建新项目

  1. 开始创建

    • 点击 创建应用程序 按钮
    • 选择 上传资产 选项
  2. 项目配置

    • 项目名称:输入 cfvless-admin(或您喜欢的名称)
    • 点击 创建项目
  3. 上传文件

    方法一:直接拖拽文件(推荐)

    • 将以下 2 个文件放到一个目录里后,把目录拖放到上传区域:
      • index.html(主页面)
      • _worker.js(后端逻辑)

    方法二:使用打包文件(更简单)

  • 下载 v2.0 Release 包

  • 直接将 zip 包拖拽到上传区域,Cloudflare Pages 会自动解压

  • 无需手动解压文件

    • 点击 部署站点
  1. 等待部署
    • 系统会自动部署您的文件
    • 完成后会显示访问地址,如:https://cfvless-admin.pages.dev

步骤 2:创建 D1 数据库

2.1 进入 D1 服务

  1. 返回主菜单

    • 在 Cloudflare Dashboard 左侧菜单
    • 点击 Workers 和 PagesD1
  2. 创建数据库

    • 点击 创建数据库 按钮
    • 数据库名称:输入 subscription-db
    • 点击 创建

2.2 初始化数据库表

  1. 进入数据库控制台

    • 点击刚创建的 subscription-db 数据库
    • 选择右上角 expolore data
  2. 执行数据库初始化脚本

    • 在项目根目录找到 d1_init_single.sql 文件
    • 打开该文件,复制全部 SQL 语句内容
    • 粘贴到 D1 控制台的查询编辑器中
    • 点击右下角 Run 按钮旁边的下拉箭头
    • 选择 Run all statements 执行所有语句
    • 等待执行完成,系统会显示成功提示
  3. 验证数据库创建结果

    • 初始化成功后,在查询编辑器中执行以下 SQL 命令:
    SELECT name FROM sqlite_master WHERE type='table';
    • 执行结果应显示以下 7 个核心数据表:
      • users - 用户信息表
      • subscription_sources - 订阅源表
      • node_pool - 节点池表
      • subscriptions - 订阅记录表
      • tags - 标签表
      • node_tag_map - 节点标签关联表
      • source_node_configs - 源节点配置表

步骤 3:创建 KV 命名空间

3.1 进入 KV 服务

  1. 访问 KV 页面

    • 在 Cloudflare Dashboard 左侧菜单
    • 点击 Workers 和 PagesKV
  2. 创建命名空间

    • 点击 创建命名空间 按钮
    • 命名空间名称:输入 subscription
    • 点击 添加

步骤 4:绑定资源到 Pages 项目

4.1 进入 Pages 项目设置

  1. 返回 Pages

    • 在 Cloudflare Dashboard 中
    • 进入 Workers 和 PagesPages
    • 点击您的 cfvless-admin 项目
  2. 进入设置页面

    • 点击 设置 标签
    • 选择 函数 子标签

4.2 绑定 D1 数据库

  1. 添加 D1 绑定

    • D1 数据库绑定 部分
    • 点击 添加绑定 按钮
  2. 配置绑定

    • 变量名:输入 DB(必须大写)
    • D1 数据库:选择 subscription-db
    • 点击 保存

4.3 绑定 KV 命名空间

  1. 添加 KV 绑定

    • KV 命名空间绑定 部分
    • 点击 添加绑定 按钮
  2. 配置绑定

    • 变量名:输入 subscription
    • KV 命名空间:选择 subscription
    • 点击 保存

4.4 完成绑定

  1. 保存所有设置

    • 确认两个绑定都已添加
    • 点击页面底部的 保存 按钮
  2. 等待重新部署

    • 保存后,必须重新上传一次上面的 pages 的文件,必须重新部署一次,Pages 的刚才的设置才会生效!
    • 等待部署完成(通常 1-2 分钟)

步骤 5:验证部署

5.1 访问网站

  1. 打开网站

    • 访问您的 Pages 地址:https://你的 pages 域名.pages.dev
    • 应该能看到登录页面
  2. 测试功能

    • 尝试注册一个新账户
    • 登录并测试基本功能

5.2 故障排除

如果网站无法正常工作:

  1. 检查绑定

    • 确认 D1 和 KV 绑定的变量名正确
    • DB(D1 数据库)和 subscription(KV 命名空间)
  2. 查看日志

    • 在 Pages 项目中点击 函数 标签
    • 查看实时日志了解错误信息
  3. 重新部署

    • 在 Pages 项目中点击 部署 标签
    • 点击最新部署右侧的 重试 按钮

🔧 故障排除

常见问题及解决方案

1. 网站无法访问

症状:访问 Pages 地址显示错误页面 解决方案

  • 检查 Pages 项目是否部署成功
  • 确认域名配置正确
  • 查看部署日志是否有错误

2. 无法注册/登录

症状:注册或登录按钮无响应 解决方案

  • 确认 D1 数据库已创建并初始化
  • 检查数据库绑定变量名是否为DB
  • 验证数据库表结构是否正确

3. 功能异常

症状:某些功能无法使用 解决方案

  • 确认 KV 命名空间已创建
  • 检查 KV 绑定变量名是否为subscription
  • 重新部署项目

4. 数据库连接失败

症状:控制台显示数据库错误 解决方案

  • 检查 D1 数据库状态
  • 确认绑定配置正确
  • 验证数据库权限设置

调试方法

1. 查看 Pages 日志

  1. 进入 Pages 项目
  2. 点击函数标签
  3. 查看实时日志输出

2. 检查数据库状态

  1. 进入 D1 服务
  2. 选择数据库
  3. 查看表结构和数据

3. 验证绑定配置

  1. 进入 Pages 项目设置
  2. 检查函数绑定
  3. 确认变量名和资源匹配

📱 使用说明

1. 用户注册

  • 访问网站首页
  • 点击"注册"按钮
  • 输入用户名和密码
  • 系统自动创建用户账户

2. 用户登录

  • 输入用户名和密码
  • 点击"登录"按钮
  • 系统创建会话并跳转到管理界面

3. 订阅源管理

  • 添加订阅源 URL
  • 系统自动解析节点
  • 支持手动刷新和更新

4. Tag 管理

  • 创建自定义标签
  • 将节点分配到不同标签
  • 支持批量操作

5. 节点生成器

  • 选择模板节点
  • 配置生成参数
  • 生成扩展节点

6. 订阅输出

  • 支持多种格式
  • 实时更新节点列表
  • 个性化订阅链接

📦 快速下载

🚀 最新版本下载

v2.0 稳定版下载 Release 包

  • 📁 包含文件:index.html + _worker.js
  • 🎯 开箱即用,无需额外配置
  • 📱 支持直接拖拽 zip 包到 Cloudflare Pages
  • ⚡ 自动解压,部署更简单

🔧 手动下载

如果您想手动下载单个文件:

🔧 高级配置

🌐 IP 段自定义配置

项目内置了完整的 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 自定义配置

项目支持自定义 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"(用逗号分隔)
  • 应用场景:根据你的实际代理服务器配置调整

🔧 ProxyIP 配置示例

// 单个 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 节点分类管理
  • 多格式支持:兼容主流客户端
  • 响应式设计:完美适配各种设备

📞 技术支持

如果您在使用过程中遇到问题:

  1. 检查部署步骤:确保按照指南逐步操作
  2. 查看错误日志:在 Pages 函数标签中查看详细错误信息
  3. 验证配置:确认数据库和 KV 绑定正确
  4. 重新部署:绑定资源后需要重新部署

⚠️ 重要提醒

  • 免费版限制:Cloudflare 免费版有使用量限制
  • 数据备份:定期备份重要数据
  • 安全设置:使用强密码保护账户
  • 合规使用:遵守当地法律法规

项目地址: CFvless-ADMIN

最后更新: 2025 年 9 月

部署难度: ⭐⭐ (适合小白用户)

About

Cloudflare VLESS/VMess 聚合管理平台(节点 nat64 |自定义优选IP |CF 网段随机生成|订阅节点整删减|分享管理 )

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors