之前写过一篇利用码云Gitee+PicGo搭建个人图床,当时说到了要写一篇用Github做图床的教程,一直拖到了现在,今天就来讲解一下怎么实现。
本篇文章主要讲解如何使用PicGo上传并使用jsDelivr加速,当然你也可以手动上传或者加速其他静态文件。
jsDelivr是一个比较好的CDN平台,官方号称jsDelivr – Open Source CDN free, fast, and reliable,简单来说就是开源的CDN,免费、快、可靠。
使用限制
- 目前GITHUB仓库容量是没有上限的!不过官方推荐在1G以内!
- 仓库单个文件50M会收到警告,大于100M会被拒绝!
- jsDelivr仅能针对50M以下的文件CDN加速!
放一个测试图:https://cdn.jsdelivr.net/gh/noshore/cdn/img/20200527224639.jpg
创建仓库
当然,首先你得有个Github的帐号。
新建一个仓库,填写仓库名,将权限设置成public,根据需求选择是否为仓库初始化一个README.md描述文件。

生成Token
点击用户头像 -> 选择Settings

点击Developer settings

点击Personal access tokens并点击Generate new token新建一个Token。

填写Token描述,勾选repo,然后点击Generate token生成一个Token。

获取Token密钥
生成之后会显示Token的密钥,复制保存好。
注意这个Token只会显示一次,自己先保存下来,或者等后面配置好PicGo后再关闭此网页。

配置PicGo
进入PicGo官网下载,由于github的问题下载速度较慢,在这里放上博主已经下载好上传到百度网盘的。
链接:https://pan.baidu.com/s/115MA7FdskRM2Rapd4RsBmg 提取码:a336
- 设定仓库名:按照
用户名/图床仓库名的格式填写 - 设定分支名:
master - 设定 Token:粘贴之前生成的
Token - 指定存储路径:填写想要储存的路径,如
img/,这样就会在仓库下创建一个名为img的文件夹,图片将会储存在此文件夹中。 - 设定自定义域名:它的的作用是,在图片上传后,PicGo会按照
自定义域名+上传的图片名的方式生成访问链接,放到粘贴板上,因为我们要使用jsDelivr加速访问,所以可以设置为https://cdn.jsdelivr.net/gh/用户名/图床仓库名

上传图片
配置完成之后,只需要将图片拖动上传即可,然后在相册区可以复制链接了。

手动上传
这边讲另一种方式——手动上传
上传图片之后,发布一个release。

官方的访问方法就是:
https://cdn.jsdelivr.net/gh/用户名/仓库名@分支名或版本号/文件名
例如我在repo根目录下传了一张名为1.jpg的图片,那么文件链接就是
https://cdn.jsdelivr.net/gh/noshore/cdn@1.0/1.jpg
上面说了也可以不创建releases,就直接用分支代替版本号也是可以的。
https://cdn.jsdelivr.net/gh/noshore/cdn@master/1.jpg
jsdelivr也可以直接获取仓库目录,格式如下。
https://cdn.jsdelivr.net/gh/用户名/仓库名@分支名或版本号/
如果直接使用分支进行访问,例:https://cdn.jsdelivr.net/gh/noshore/cdn@master/1.jpg。
master分支会有缓存,缓存应该是一天更新一次。如果想进行及时更新,可以把master直接改成latest即可。
格式如下:https://cdn.jsdelivr.net/gh/jcjyxjs/cdn@latest/1.jpg
建议只用作静态文件加速,例如JS/CSS/Image。并不适合大文件分发,大文件分发还是移步国内各厂的对象存储。






