xget-web是xget服务的的url转换的WEB UI ,可以省去自己手动根据规则生成加速url,实现输入url后自动转换为加速地址

- Node.js 16+
- npm 或 yarn
- Cloudflare 账户
- 提前部署好xget服务
-
注册 Cloudflare 账户:访问 Cloudflare Workers 并注册账户
-
安装 Wrangler CLI:
npm install -g wrangler wrangler login
-
克隆项目:
git clone https://github.com/912988434/xget-web.git cd xget-web npm install
4、修改配置
Important
部署到不同环境需要修改对应的wrangler.toml文件中的不同环境的配置,请根据需要选择并修改
主要是修改 route 中地址 和 BASE_URL
# 部署到默认环境,使用wrangler.toml文件中顶层配置
npm run deploy
# 部署到dev环境,使用wrangler.toml文件中dev配置
npm run deploy:dev
# 部署到生产环境,使用wrangler.toml文件中production配置
npm run deploy:production
# 或者部署到测试环境,用wrangler.toml文件中staging配置
npm run deploy:staging# 部署到默认环境,使用wrangler.toml文件中顶层配置
wrangler deploy 或者 wrangler deploy --env ""
# 部署到dev环境,使用wrangler.toml文件中dev配置
wrangler deploy --env dev
# 部署到production环境,使用wrangler.toml文件中production配置
wrangler deploy --env production
# 或者部署到staging环境,用wrangler.toml文件中staging配置
wrangler deploy --env staging部署成功后,可以通过两种地址访问
- route中定义的域名 workers.dev域名:
- Worker 域名:
your-worker-name.your-subdomain.workers.dev
name = "xget-web" # Worker 名称
main = "worker.js" # 入口文件
compatibility_date = "2024-01-01" # 兼容性日期
[env.production]
name = "xget-web-prod" # 生产环境名称
[env.staging]
name = "xget-web-staging" # 测试环境名称如需修改配置,请编辑 wrangler.toml 文件:
-
修改 Worker 名称:
name = "your-custom-name"
-
添加环境变量:
[vars] ENVIRONMENT = "production"
-
绑定自定义域名:
route = { pattern = "xxx.domian.com", custom_domain = true }
# 启动本地开发服务器
npm run dev
# 或使用 wrangler 直接启动
wrangler dev访问 http://localhost:8787 查看本地版本。
# 查看生产环境日志
npm run tail
# 或使用 wrangler 命令
wrangler tailxget-web/
├── worker.js # Cloudflare Workers 入口文件
├── wrangler.toml # Wrangler 配置文件
├── package.json # 项目配置
├── src/
│ ├── handler.js # 请求处理器
│ └── static.js # 静态文件内容
└── README.md # 部署说明文档
在 Cloudflare 控制台中:
- 进入 Workers & Pages
- 选择您的 Worker
- 点击 "Custom domains"
- 添加您的域名
或在 wrangler.toml 中配置:
route = { pattern = "xxxx.domain.com", custom_domain = true }默认已配置适当的缓存策略:
- HTML: 1小时缓存
- CSS/JS: 24小时缓存
- 静态资源: 长期缓存
-
部署失败
# 检查 Wrangler 版本 wrangler --version # 重新登录 wrangler logout wrangler login
-
域名访问问题
- 确认域名已正确配置
- 检查 DNS 设置
- 等待 DNS 传播(最多24小时)
-
静态文件加载问题
- 检查
src/static-files.js中的文件内容 - 确认文件路径正确
- 检查
# 查看 Worker 详细信息
wrangler whoami
# 查看部署状态
wrangler deployments list
# 查看实时日志
wrangler tail --format pretty- 静态资源使用长期缓存
- HTML 使用短期缓存以便更新
- 利用 Cloudflare 边缘缓存
- CSS/JS 已经过优化
- 启用 Gzip 压缩
- 使用 Cloudflare 的自动压缩
- 利用 Cloudflare 的全球 CDN
- 边缘计算降低延迟
- 自动故障转移
默认已配置的安全头:
X-Content-Type-Options: nosniffX-Frame-Options: DENYX-XSS-Protection: 1; mode=blockReferrer-Policy: strict-origin-when-cross-origin
在 Cloudflare 控制台中查看:
- 请求数量和响应时间
- 错误率和状态码分布
- 地理位置分析
- 缓存命中率
可以添加自定义指标:
// 在 worker.js 中添加
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request));
// 记录自定义指标
event.waitUntil(
logMetrics(event.request)
);
});- 自定义样式:修改
src/static-files.js中的 CSS - 添加功能:扩展 JavaScript 功能
- 集成分析:添加 Google Analytics 或其他分析工具
- SEO 优化:添加 meta 标签和结构化数据
- PWA 支持:添加 Service Worker 和 manifest.json
如果遇到问题:
- 查看 Cloudflare Workers 文档
- 检查 Wrangler CLI 文档
- 查看项目的 GitHub Issues
🎉 恭喜!您的 Xget URL 转换器现在已经部署到 Cloudflare Workers 上了!