搭建博客图床

前言

随着博客内容的增加,文章图片的数量也不断增长,如何引用存储图片就成了一个问题。对于我这样没什么访问量,只是写给自己看的博客,要求就是简单方便(当然能白嫖最好 😬),最后采用 GitHub + JsDelivr + uTools 图床插件的办法。

图床选择

先来说一下其他图床吧,简单来说,如果你有一个备案域名的话,做什么事都比较简单,国内的许多平台的对象存储都需要一个 备案域名。如果像我一样仅仅是为 Hexo + github pages 博客搞个图床,感觉再弄那些就有些麻烦了。

  • 公益图床

    公益图床简单来说就是一些免费的图床,缺点就在于速度确实有些慢了,毕竟免费->盈利有限->服务器也有限

    • SM.MS: 比较有代表性的一个免费图床,我之前用的也是 SM.MS 除了速度慢点,偶尔上传失败,总体来说也算是比较好用的。
    • 路过图床: 没有使用过,也不多说
  • 基于对象存储

    国内的许多平台都有对象存储服务,比如阿里云,腾讯云,又拍云,七牛云等,对于访问量比较小的网站,总体来说存储费用也不会太贵

    • 阿里云: 阿里云 OSS 还是比较好的,计费情况你可以参考 阿里云 OSS,emmmm,总得来说比较复杂
    • 腾讯云: 总体来说和阿里云差不多,详情参考 腾讯云 COS
    • 七牛云: 七牛图床也是网上推荐比较多的,认证过后提供免费的 10G 存储空间,免费提供 HTTP 外链, HTTPS 收费,另外提供的图片外链是测试的域名,30 天后会被回收,因此就需要备案域名。
    • 又拍云: 10G 免费存储空间,同样需要备案域名。

总的来说,如果你有备案域名,那么就可以选择上面那些平台的对象存储服务,如果你只是像我一样需要简单存储,那么你可以选择免费图床,或者是直接用 GitHub 作为仓库。

下面回到正题,说一下我的图床选择。

创建 GitHub 仓库

用 GitHub 作为仓库没什么理由,主要就是免费,空间大,至于什么访问问题,能自己把博客都折腾起来的人我相信这都不算事。

登入 GitHub,如果没有账号的话就注册一下,完成之后点击右上角的 +,选择 New repository 创建一个新的代码仓库,仓库名随意,比如 imgbed

创建完仓库之后你还需要创建 token,具体来说:点击右上角头像,进入Settings,选择 Developer settings

之后在打开的页面进入 Personal access tokens,选择 Generate new token

note 中随便取个标题,勾选 repo,然后 Generate token 即可。

之后会生成一个 token,记得保存,这个 token 只会出现一次,之后要用到。

JsDelivr

放在 Github 的资源在国内加载速度比较慢,因此需要使用 CDN 加速来优化网站打开速度,这里就要用到 JsDelivr,更多使用方法可以到官网查询。

使用方法

1
2
3
4
5
6
7
https://cdn.jsdelivr.net/gh/用户名/仓库名@版本号/文件路径

## 引入js文件,仓库名为BlogBeautify,版本号为1.1
https://cdn.jsdelivr.net/gh/EmoryHuang/BlogBeautify@1.1/DynamicRibbon.min.js

## 引入图片,也可以不使用版本号
https://cdn.jsdelivr.net/gh/emoryhuang/imgbed@master/3967644193.png

uTools 图床插件

配好了 GitHub + JsDelivr,剩下重要的就是图片管理的软件了,总不会还得手动拼链接。

很多人都推荐了 PicGo 功能强大,然而我使用了之后发现,图片能上传,但是上传之后显示不了缩略图,这就很麻烦了。我估计是我自己电脑的问题,但也没找到解决方法,就不了了之了。

我推荐另一款轻量级的工具 uTools,首先它不是专门的图床软件,我最开始也不是把它当作图床软件在使用。uTools 就只是一个 Launcher 启动器,有丰富的插件,你可以到官网了解它的更多信息。

这里主要说一下 uTools 插件中心的图床插件,安装完插件之后,你可以在需要上传的图片上长按右键呼出超级面板,点击上传到图床,即可上传成功。

在弹出的面板中,你可以选择 URL、HTML、MD 等格式的链接,另外,如果上传到 GitHub,生成的链接自带 JsDelivr,然后既可以愉快的使用了。

当然,在使用之前你先要在插件的设置页面把之前获得的 token 填入。

目前,这个插件只支持阿里 OSS,腾讯 OSS,GitHub,SM.MS 这几个图床,配置还是有些少了。另外也会偶尔出现无法显示缩略图的问题,但对我而言就已经够了,毕竟它足够简单快捷。