1 引言
我们在写文章的时候,经常需要使用单独对象存储来存放自己的图片资源,这就是我们所说的“图床”。
先来对比下几种常见图床:
1)微博图床:以前用的人比较多,从2019年4月开始开启了防盗链,凉凉
2)SM.MS:运营四年多了,也变得越来越慢了,到了晚上直接打不开图片,速度堪忧
3)Imgur等国外图床:国内访问速度太慢,随时有被墙的风险
4)大厂储存服务:例如七牛云、又拍云、腾讯云COS、阿里云OSS等,容量限制,操作繁琐,又是实名认证又是域名备案的,麻烦,而且还要花钱(有钱又不怕麻烦的当我没说)
所以如果你对资源管理有更高的要求,或者你是一个小团队需要有自己的图床以保证稳定,可以通过本文介绍的方法,
2 介绍
主要思路:使用 PicGo 工具一键上传,操作简单高效,将图片或其他静态文件上传到指定 Github 仓库位置,再利用 jsDelivr 获得图片加速后的 url;GitHub 和 jsDelivr 都是大厂,不用担心跑路问题,不用担心速度和容量问题,而且完全免费。
2.1 Github介绍
Github目前最好用的免费开源项目托管站点,众多开源项目都托管在Github,目前Github已被微软收购了。
Github官方:https://github.com/
2.2 jsDelivr介绍
jsDelivr是一个提供数千种Javascript、CSS等超过1650多种 Libraries 加速的免费CDN服务,支持给Github、WordPress、NPM免费提供CDN加速。而且国内也有 CDN 节点,速度非常快。
jsDelivr官方:https://www.jsdelivr.com/
2.3 PicGo3
PicGo是一款图床应用,图片上传+管理新体验,支持Linux、Windows及MacOS系统,它基于electron-vue开发。
PicGo软件下载地址:https://github.com/Molunerfinn/picgo/releases
2.4 使用限制
- 目前GITHUB仓库容量是没有上限的!不过官方推荐在1G以内!
- 仓库单个文件50M会收到警告,大于100M会被拒绝!
- jsDelivr仅能针对50M以下的文件CDN加速!
3 利用 PicGo+jsDelivr + Github 给 WordPress 免费加速
3.1 注册 Github 账号
首先登录/注册GitHub(https://github.com/),新建一个仓库,填写好仓库名,仓库描述,根据需求选择是否为仓库初始化一个 README.md 描述文件,如图所示:
3.2 生成一个Token
在主页依次选择【Settings】-【Developer settings】-【Personal access tokens】-【Generate new token】,填写好描述,勾选【repo】,然后点击【Generate token】生成一个Token,注意这个Token只会显示一次,自己先保存下来,或者等后面配置好PicGo后再关闭此网页:
3.3 配置PicGo
下载PicGo软件:https://github.com/Molunerfinn/picgo/releases,可以下载exe版本到本地windows上安装
- 设定仓库名:按照【用户名/图床仓库名】的格式填写
- 设定分支名:【main】
- 设定Token:粘贴之前生成的【Token】
- 指定存储路径:填写想要储存的路径,如【img/】,这样就会在仓库下创建一个名为 img 的文件夹,图片将会储存在此文件夹中
- 设定自定义域名:它的作用是,在图片上传后,PicGo 会按照【自定义域名+储存路径+上传的图片名】的方式生成访问链接,并放到粘贴板上,因为我们要使用 jsDelivr 加速访问,所以可以设置为【https://cdn.jsdelivr.net/gh/用户名/图床仓库名 】,上传完毕后,我们就可以通过【https://cdn.jsdelivr.net/gh/用户名/图床仓库名/图片路径 】加速访问我们的图片了。
访问:https://cdn.jsdelivr.net/gh/用户名/仓库名@版本号/ 即可访问你的内容了!
文件不想带版本号?将版本号换成latest即可!或者不带版本号!或者直接@main(或者其他分支名称)!创建分支,版本号输入1.0 ,目标是 main分支!(自己熟悉下github的操作)
3.4 测试
使用PigCo上传一张图片,然后可以登录到github仓库中查看,会在仓库下创建一个名为 img 的文件夹,图片将会储存在此文件夹中,测试链接:
https://cdn.jsdelivr.net/gh/xiaojun0227/ImgHosting/img/yuantu.jpg
https://cdn.jsdelivr.net/gh/xiaojun0227/ImgHosting@main/img/yuantu.jpg
最后:可以在你主题的头部文件加入 <link rel=’dns-prefetch’ href=’//cdn.jsdelivr.net’ /> 预读DNS,加快解析
暂无评论内容