之前一直在用的LskyPro图床一直和PicGo配合的好好的,typora粘贴后直接就用PicGo上传到LskyPro上,自从换了新域名,重新搭建了LskyPro后PicGo就有点水土不服,经常出现上传失败的情况,不知道是服务器的原因还是什么,一直找不到很好的替代方案。

后期发现在http下可以通过api来上传,但是https不行,经过排查,是因为证书的根证书不受客户端信任的问题,更换成亚洲诚信的免费ssl证书就正常了。

无意间看到PicGo原生就支持COS,然后我的服务器也是腾讯的轻量应用服务器,可以通过内网挂载COS bucket,于是我心生一计,既然前台上传还是会同步到COS一份,那岂不直接上传到COS,用挂载的方式走内网,然后再使用凉心的百度云加速(由原来每天10g流量缩减到5g了)进行cdn加速,这样既省了流量,也节约了服务器运行php的一部分性能,岂不美哉!

下面开始套娃。

服务器端配置

挂载bucket

这部分直接使用宝塔的插件腾讯云COSFS,挂载到wwwroot目录下的一个文件夹,最好是同地域,因为内网状态下不会扣钱

image-20211222210758919
image-20211222210758919

创建静态网站

然后创建一个静态网站,目录就选择挂载的文件夹

image-20211222210902284
image-20211222210902284

然后把这个域名解析到百度云加速,并做一下缓存

image-20211222211027780
image-20211222211027780

image-20211222211053157
image-20211222211053157

image-20211222211111153
image-20211222211111153

本地配置

PicGo配置

首先安装文档安装好picgo,配置好cos的相关信息,直接参考文档:配置手册 | PicGo

在Picgo设置内设置上方创建的自定义域名

image-20211222211224087
image-20211222211224087

Typora配置

在偏好设置内的图像设置中把图片插入的行为设置成上传图片,然后把上传服务选择picgo程序(取决于安装位置)

image-20211222211452254
image-20211222211452254

验证一下

image-20211222211627287
image-20211222211627287

然后就可以开始愉快的写作了

结语

也许你会说为什么不直接COS绑定域名?因为这样可以走内网节省流量。

当然,以后迁移的时候也方便,就算不用COS了,直接把bucket文件压缩,到服务器解压后创建网站,用相同的域名,可以无缝转换。