d18983e23d1943d43f1787d259b0e4d6c01b4376
* feat: 支持代理 GitHub 资源 CDN 直链(release-assets / codeload / objects / media) 与 CF 版 hubporg/CF-GitHub-Proxy#3 同一套逻辑:GitHub 域名链接仍在服务端内部 跟随跳转并返回文件内容,新增的 CDN 主机直链则直接代理。 改动要点: 1. exps 拆分为 entryExps(入口链接)与 assetExps(资源 CDN),exps 为二者拼接 2. handler 中 exps[1] 改为显式引用 entryExps[1],避免拼接后索引语义漂移 3. proxy 的 Location 分支改用 isEntryURL:只有入口链接才重写为代理地址, CDN 跳转在服务端内部跟随,客户端不会看到真实文件地址 4. 新增 isEntryURL 修复前:资源 CDN 直链(release-assets / codeload 等)返回 404。 * test: 补充 CDN 主机匹配与入口判定的单元测试 覆盖两处关键行为: - checkURL 命中新增的 CDN 主机(release-assets / objects / github-releases / codeload / media),并拒绝非 GitHub 域名与形似域名(如 github.com.evil.com) - isEntryURL 只命中入口链接,CDN 主机一律不命中——这是避免 302 被重写、 从而把真实文件地址暴露给客户端的关键约束 (可选提交,如不需要可直接丢弃。) --------- Co-authored-by: Geekertao-bot <254965144+Geekertao-bot@users.noreply.github.com>
ghproxy
这是 CF-Workers-Github-Proxy 的 Go 语言版本。改自gh-proxy
支持内容
• GitHub API (api.github.com)
• Raw 文件 (raw.githubusercontent.com)
• Gist 文件 (gist.githubusercontent.com)
• Releases 文件 (github.com/用户名/仓库名/releases|archive/)
• Git 克隆支持 (git clone)
Docker 部署
- 新建配置文件
config.json,内容如下:
{
"analyticsURL": "https://analytics.geekertao.top",
"supportImageURL": "https://geekertao.top/static/img/zsm.jpg",
"whiteList": [
],
"blackList": [
"example1",
"example2"
]
}
配置文件中的
analyticsURL是顶部导航栏"数据分析"按钮的链接地址,supportImageURL是404错误页面中支持二维码的图片地址,whiteList和blackList分别是白名单和黑名单,如果设置白名单。则只有白名单中的域名会被代理,黑名单可用于过滤部分不安全仓库。
- docker-compose.yml
services:
ghproxy:
image: Geekertao/ghproxy:latest # Docker Hub 镜像源
# image:ghcr.io/Geekertao/ghproxy:latest # GitHub 镜像源
container_name: ghproxy
restart: unless-stopped
volumes:
- ./config.json:/app/config.json # 配置文件挂载路径,根据实际情况修改
ports:
- "45001:45000" # 端口映射,根据实际情况修改
- 启动容器
docker-compose up -d
数据分析
本项目的数据分析功能由 cloudflare-monitor 提供,这是一个功能强大的 Cloudflare 流量分析仪表盘。
功能特性
- 多账户支持:支持多个 Cloudflare 账户的流量监控
- 多 Zone 监控:同时监控多个 Zone 的流量数据
- 实时数据展示:实时更新的数据图表
- 历史数据分析:支持 1 天、3 天、7 天、30 天的历史数据查看
- 智能数据精度:
- 1 天和 3 天数据:小时级精度
- 7 天和 30 天数据:天级精度
- 地理位置统计:显示前 5 个国家/地区的访问量
- 缓存分析:详细的请求和带宽缓存统计
- 响应式设计:完美适配桌面端和移动端
技术栈
- 前端:React + Recharts
- 后端:Node.js + Express
- 部署:Docker + Nginx
在线演示
https://analytics.geekertao.top
自定义配置
如需使用自己的数据分析页面,请在
config.json中修改analyticsURL配置项。部署说明
详细的部署教程请参考:cloudflare-monitor 仓库 或 博客文章教程(含视频部署教程)。
如有问题或改进建议,欢迎提交 issue 或 PR!
Description
本项目是一个基于GoLang的 Github 镜像代理工具。它能够中转 Github 项目请求,解决一些访问限制和加速访问的问题。
https://gh.dpik.top
139 KiB
0 Stars
1 Watchers
0 Forks
Languages
Go
78.4%
HTML
20.8%
Dockerfile
0.8%