自建GitHub加速,优化图床质量

前言

众所周知的原因Github在国内访问异常缓慢,Gitee最近也接连遭受到审查,以前也有通过jsdelivr的加速方案,但是最近jsdelivr也接连访问受阻。image-20220602003908124

于是乎,本文将介绍如何自建Github加速镜像。

开源项目

  1. 采用gh_proxy开源项目,作者hunshcn
  2. 通过CloudFlare Worker进行转发代理

具体流程

  1. 以下参考开源项目文档

首页:https://workers.cloudflare.com

注册,登陆,Start building,取一个子域名,Create a Worker

复制 index.js 到左侧代码框,Save and deploy。如果正常,右侧应显示首页。

index.js默认配置下项目文件会走jsDelivr,如需走worker,修改Config变量即可

ASSET_URL是静态资源的url(实际上就是现在显示出来的那个输入框单页面)

PREFIX是前缀,默认(根路径情况为”/“),如果自定义路由为example.com/gh/*,请将PREFIX改为 ‘/gh/‘,注意,少一个杠都会错!

具体部署亦可参考 CloudFlare的Worker免费部署服务

  1. 根据上一步可以得到一个CloudFlare Worker的子域名,形如*.workers.dev,不过有可能你会得到同样差劲的结果[^1],不要害怕,接下来我们可以利用我们自己的域名进行cname绑定(cname即是将一个域名映射到另外一个域名),我们需要准备一个域名,将其cname指向该地址即可。具体步骤可以参考:CloudFlare Workers 设置使用自定义域名

image-20220602005354138

1. cname修改细节

image-20220602010414811

​ 2. 子域名添加细节
image-20220602010655364

  1. 修改后的测速[^1]效果如下:

    image-20220602010129030

使用现成的加速

如果觉得太过复杂可以使用开发者的网站

  1. https://ghproxy.com/ gh加速镜像开发者
  2. https://fastly.jsdelivr.net jsdelivr中国地区加速版

配置picgo

  1. 加速镜像方式

    "customUrl": "https://代理网站/https://raw.githubusercontent.com/你的GitHub用户名/仓库名/分支"
    如上即可

  2. jsdelivr方式

    "customUrl": "https://fastly.jsdelivr.net/gh/你的GitHub用户名/仓库名"