🎬 MoonTV 是一个开箱即用的、跨平台的影视聚合播放器。它基于 Next.js 14 + Tailwind CSS + TypeScript 构建,支持多资源搜索、在线播放、收藏同步、播放记录、本地 / 云端存储,让你可以随时随地畅享海量免费影视内容。
重要提示
部署时一定要设置用户名和密码,且不要对外分享,否则有封禁 CF 账号的风险;如果是 VPS Docker 部署,也有可能 IP 被墙。
克隆仓库
本人仓库(推荐)
https://github.com/yutian81/MoonTV本人仓库的不同点:
- 加入了更多的播放源
- 加入了更多分类资源
- 加入了更细化的分类
克隆以上任意一个仓库即可开始部署。
部署到 Cloudflare Pages
3.1 创建 Pages 项目
登录 CF 账号,依次点击 计算(Workers) → Workers 和 Pages → 创建。
3.2 导入仓库
选择 Pages,导入现有存储库(即你刚刚 Fork 的 MoonTV 仓库)。
3.3 配置构建设置
导入仓库后,填写以下构建参数:
填写完成后点击保存并部署。
3.4 创建 D1 数据库
在 CF 控制台依次点击:存储和数据库 → D1 SQL 数据库 → 创建。
数据库名称随意,例如:moon
创建好后,进入所创建的数据库,点击右上角 Explore Data。
在页面上方输入 此处初始化代码 后,点击 Run All。
3.5 设置兼容性标志和环境变量
回到部署的 Pages 项目,点击 设置:
兼容性标志
找到 运行时 → 兼容性标志 → 将其设置为 nodejs_compat
环境变量
点击左侧 变量与机密,设置以下环境变量:
NEXT_PUBLIC_ENABLE_REGISTER是否允许注册,默认 falseNEXT_PUBLIC_STORAGE_TYPE数据库类型,填 d1(小写)USERNAME管理员用户名PASSWORD管理员密码绑定 D1 数据库
切换到 绑定 选项卡,点击 添加,选择 D1 数据库:
DB回到部署页面,在最新的部署后面点击三个点,选择 重试部署。
切记:必须重试部署,否则数据库绑定不会生效!
3.6 绑定自定义域名
在部署页面点击上方的 自定义域,填入你托管在 CF 上的域名,并给它一个子域名前缀,然后点击确定。
等域名生效后,即可在浏览器访问 https://你绑定的域名 来访问项目,输入你设置的用户名和密码登录即可。
在电视上使用
下载 TV 版 APP:OrionTV,安装到电视上。
在设置中,后端地址填写:https://你绑定的域名
完成!现在在电视上也可以流畅播放了。