gh-proxy
简介
GitHub发布、存档以及项目文件的加速项目,支持克隆,有基于Cloudflare Workers的无服务器版本和Python版本
演示
演示站点为公共服务,如有大规模使用需求请自行部署,演示站点负载较重
当然也欢迎捐赠以支持作者
Python版本和CF Worker版本的差异
使用方法
直接在复制出来的URL前添加https://gh.api.99988866.xyz/
即可
也可以直接访问网站,在输入框中输入
大量使用请自行部署,以上域名仅供演示使用。
访问私有仓库可以通过以下方式:
git clone https://user:TOKEN@ghproxy.com/https://github.com/xxxx/xxxx
#71
以下都是有效输入(仅作示例,文件可能不存在):
-
发布源码:https://github.com/hunshcn/project/archive/v0.1.0.tar.gz
-
发布文件:https://github.com/hunshcn/project/releases/download/v0.1.0/example.zip
-
分支文件:https://github.com/hunshcn/project/blob/master/filename
-
commit文件:https://github.com/hunshcn/project/blob/1111111111111111111111111111/filename
-
gist:https://gist.githubusercontent.com/cielpy/351557e6e465c12986419ac5a4dd2568/raw/cmd.py
CF Worker版本部署
首页:https://workers.cloudflare.com
注册,登录,点击Start building
,选择一个子域名,点击Create a Worker
。
复制 index.js 到左侧代码框,点击Save and deploy
。如果一切正常,右侧应显示首页。
ASSET_URL
是静态资源的URL(实际上就是现在显示的那个输入框单页面)
PREFIX
是前缀,默认(根路径情况为"/"),如果自定义路由为example.com/gh/*,请将PREFIX改为 '/gh/',注意,少一个斜杠都会出错!
Python版本部署
Docker部署
docker run -d --name="gh-proxy-py" \
-p 0.0.0.0:80:80 \
--restart=always \
hunsh/gh-proxy-py:latest
第一个80是你要暴露的端口
直接部署
安装依赖(请使用Python3)
pip install flask requests
根据需求修改app/main.py
的前几项配置
注意: 可能需要在return Response
前添加两行
if 'Transfer-Encoding' in headers:
headers.pop('Transfer-Encoding')
注意事项
如果Python版本的机器无法正常访问github.io,会导致启动报错,请自行修改静态文件URL
Python版本默认走服务器(2021.3.27更新)
Cloudflare Workers计费
在 overview
页面可以查看使用情况。免费版每天有10万次免费请求,并且有每分钟1000次请求的限制。
如果不够用,可升级到 $5 的高级版本,每月可用1000万次请求(超出部分 $0.5/百万次请求)。
更新日志
- 2020.04.10 增加对
raw.githubusercontent.com
文件的支持 - 2020.04.09 增加Python版本(使用Flask)
- 2020.03.23 新增了clone的支持
- 2020.03.22 初始版本
链接
参考
捐赠