先说说为什么之前已经写了关于Gitee的图床教程,为啥还要再写一章关于图床的文章,是因为我发现不同图床有自己的优劣,所以做一个对比和选择

图床对比

目前市面上的图床主要分为以下三类

公共图床(野图床)

这类图床一般可以直接上传图片,会返回一个链接,供你使用,但缺点是你无法看到自己的在平台上托管的图片,我把这类平台也称为野图床,目前好用的野图床

  1. SM.MS图床:无需注册,没有广告,直接上传,不懂怎么赢利的

  2. 路过图床:有点广告,需要注册

  3. 聚合图床:貌似是利用一种分布式上传图片的方式,同样需要注册

第三方图床(代码托管平台)

这类图床一般是建立在代码托管平台的仓库中,使用时要公开仓库

  1. GitHub:全球最大代码托管平台,目前除了国内速度慢,几乎没啥缺陷
  2. Gitee:国内仿GitHub代码托管平台,但免费的各种容量上的限制,优点是国内速度快
  3. 七牛云:速度快,缺点是要点小钱,免费的各种限制

服务器图床

  1. 各大云服务器:阿里云,百度云,华为云等等,但是大材小用
  2. 私人服务器

总结对比

费用 容量限制 隐私 可管理性 配对插件 速度 安全性
公共图床 免费 一般 较差 较差 几乎无 可能丢失
GitHub 免费 一般 一般 一般 很慢 一般不会
Gitee 免费/收费 免费限制极大 一般 一般 一般不会
服务器 收费 没啥限制 安全 很好 安全性高

Github图床的优化

野图床最大的问题就在于可能出现图片链接丢失,到时欲哭无泪。在考虑费用和速度的前提下,最初选择Gitee作为图床,但是发现了诸多限制,1M以上的图片会传输失败等,所以使用GitHub图床,搭建过程可以百度,这里主要介绍一些插件使用和注意事项。

配置PicGo

  • 仓库名:设定仓库名的时候,按照【用户名 / 图床仓库名】的格式填写,例如:xiaoli/myrep需要注意的是:仓库名称有空格,github会自动帮你转换。例如:pic bed 转换为 pic-bed。
  • 分枝:默认master即可
  • Token:设置仓库时候的Token
  • 指定存储路径:自定义,例:images/,相当于在刚刚新建的仓库下新建了一个文件夹。
  • 设定自定义域名:可以不填写

jsDelivr优化加速

这里详细说一下设定自定义域名,由于GitHub访问上传速度很慢,所以需要进行优化。

设定自定义域名的作用是,在图片上传后,PicGo会按照【自定义域名+储存路径+上传的图片名】的方式生成访问链接,放到粘贴板上

这里我们要使用 jsDelivr 加速访问,所以可以设置为https://cdn.jsdelivr.net/gh/用户名/图床仓库名 ,上传完毕后,我们就可以通过https://cdn.jsdelivr.net/gh/<用户名>/<仓库名>/<文件及路径>加速访问我们的图片了,例如设置为:

https://cdn.jsdelivr.net/gh/fudalijunyi/cdn/img/logo2.jpg

Tip:也可以使用版本号的方式,用 @符链接。格式为:https://cdn.jsdelivr.net/gh/<用户名>/<仓库名>@[分支/版本号]/<文件及路径>,例如:

https://cdn.jsdelivr.net/gh/fudalijunyi/cdn@1.01/img/logo2.jpg

采用版本号的好处是无缓存限制,及时更新资源!

上传与删除图片

可以和Gitee配合使用,主要注意的是,

  1. GitHub图片不能通过Picgo删除,需要手动仓库删除;Gitee在Picgo进行删除时,会同步删除仓库图片。
  2. 图片命名要规范,尽量不要有+,-等其他奇怪符号,防止上传报错