Cloudflare 部署 GitHub MoonTV 全流程:免费追剧重点环节解析

准备工作

确保已注册 Cloudflare 账号并拥有域名(支持免费子域名)。GitHub 账号需提前准备,用于托管 MoonTV 项目文件。

域名解析配置

在 Cloudflare 控制面板添加域名,按提示修改 DNS 服务器为 Cloudflare 提供的地址。完成验证后,进入 DNS 设置页面,添加 A 记录指向 GitHub Pages 的 IP 地址(如 185.199.108.153),或使用 CNAME 记录指向 username.github.io

GitHub 仓库设置

创建新仓库并上传 MoonTV 前端代码(HTML/CSS/JS 等静态文件)。进入仓库 Settings > Pages,选择分支作为源,启用 GitHub Pages。自定义域名处填写 Cloudflare 配置的域名,并勾选 "Enforce HTTPS"。

Cloudflare 安全加速

在 Cloudflare 的 SSL/TLS 设置中,选择 "Full" 加密模式。开启 Always Use HTTPS 和 Automatic HTTPS Rewrites。防火墙规则中可针对地区或IP限制访问,提升安全性。

缓存优化

于 Cloudflare 的 Caching 配置中,设置静态资源(如图片、JS/CSS)的缓存时间(如 1 个月)。启用 Brotli 压缩降低流量消耗。自定义缓存规则可绕过动态内容,确保数据实时性。

反爬策略

配置防火墙规则,屏蔽常见爬虫 User-Agent 或高频访问 IP。Rate Limiting 功能可限制单 IP 请求频率(如 100 次/分钟)。Worker 脚本可用于动态验证访问权限。

示例代码(Worker 基础验证)

javascript 复制代码
addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  const validToken = 'YOUR_SECRET_TOKEN'
  const url = new URL(request.url)
  
  // 检查路径或参数
  if (url.pathname.startsWith('/api/') && 
      request.headers.get('Authorization') !== validToken) {
    return new Response('Access denied', { status: 403 })
  }
  
  return fetch(request)
}

注意事项

GitHub Pages 每月有带宽限制,流量较大时需考虑分流存储。动态数据建议通过 Cloudflare Worker 中转 API 请求。定期检查 Cloudflare 的 Analytics 面板,监控异常流量。

相关推荐
无双@2 小时前
Github BettaFish 微舆docker部署教程 —— 打造你的八卦天团!
docker·容器·开源·github·微舆·bettafish
emem.2 小时前
【超详细】VSCode连接GitHub全攻略:上传/克隆代码一步到位
ide·vscode·github
猫头虎2 小时前
猫头虎AI分享|可把GitHub代码库变成实时文档中心的一款实用型MCP工具:GitMCP,让AI随时访问最新文档代码,消除代码幻觉
人工智能·github·aigc·ai编程·ai写作·agi·ai-native
thinktodo19982 小时前
GitHub Spec Kit 中文使用说明
github
YRr YRr2 小时前
GitHub Copilot Pro 学生认证免费订阅及VS Code集成完整教程
github·copilot
七月七332 小时前
半小时搞定GitHub学生认证
笔记·github
KevinRay_2 小时前
Github如何上传项目(超详细小白教程)
git·gitee·开源·github·vim
彭石榴2 小时前
github copilot学生认证教程,免费使用两年Copilot Pro!!(避免踩坑版)
vscode·github·copilot
安装虚拟机的老师傅2 小时前
手把手教你在GitHub上运行开源项目(新手必看版)
开源·github