我的浏览器有装一个油猴脚本
这样我在访问 GitHub 的时候,有一些代理选项。
因为大多数时候,我如果不用梯子,直接点击原链接,是没法下载成功的。
但是后面的代理链接,有时候也不是很好用,像这种套 cloudflare 的,一天 10 万次居然都能被用完。看来苦逼的国内用户需求还是挺大的。
它的原理其实也不难。
原链接:https://github.com/usefathom/fathom/releases/download/v1.3.1/fathom_1.3.1_linux_arm64.tar.gz
也就是把 https://github.com 换成 https://github.rc1844.workers.dev
workers.dev 是 cloudflare 的域名,我们也可以自建自己的 worker 来代理 GitHub。需要使用开源项目:https://github.com/hunshcn/gh-proxy
项目的 readme 里面也有写怎么自建 worker 代理。网上也有挺多人写教程的,我自己搭建了一个,结果发现,我的网络好像连访问 cf 都不流畅……
后来了解到,原来是 workers.dev 已经被墙了……
解决方法是绑定自己的域名,不过它要求域名的 DNS 解析,得是托管在 cloudflare 才行。
接着我想研究看看搭建在自己的服务器上,反正服务器的流量一般也用不完。
使用 docker 的话,很快,一行命令就行,没什么难度。
docker run -d --name="gh-proxy-py" \ |
不过这镜像有点大,居然要 910MB ……
hunsh/gh-proxy-py latest 745d6b4639c3 23 months ago 910MB |
体验一下看到有效果,赶紧把它删了,我这小小的服务器空间宝贵,舍不得。
我打算部署 python 版本,因为相比之下占用空间就小很多了。
先把项目克隆到服务器上,然后修改 main.py
git clone https://github.com/hunshcn/gh-proxy |
需要安装依赖
pip install flask requests |
运行起来
python3 app/main.py |
也是很简单就可以运行起来,看到可以正常访问之后,我再次把 ip 改为 127.0.0.1 端口就随便设置一个,之后再使用反向代理。
目前我就使用 screen 让它在后台运行着,比较好的处理方式应该是用 systemd。
观察了下,感觉还行,占用的系统资源并不多。
我在自己的服务器上搭建了一个,在 cloudflare 的 workers 也搭建一个。之后可以将自己的链接添加到油猴脚本里面。
就是替换掉脚本中原来的,这样我可以在 GitHub 上面点击那个属于自己的按钮。