基于阿里云OSS+PicGo+Typora的自动博客图床

事情是这样的,本来前几天还好好的图床,昨天突然把我博客一堆封面图全删了,我感到非常裂开。。

然后看到同学有自己的OSS存储,我在想我是不是也可以整一个,然后就整了一个,这里记录了一下整个过程以及相关的注意事项,方便后续查阅。

OSS的简介与套餐选择

阿里云对象存储OSS(Object Storage Service)是阿里云提供的海量、安全、低成本、高持久的云存储服务。其数据设计持久性不低于99.9999999999%(12个9),服务可用性(或业务连续性)不低于99.995%。

OSS具有与平台无关的RESTful API接口,您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。

摘自阿里云官方产品简介“什么是对象存储OSS”

简单来讲,OSS就是一种云存储服务,提供了一种高稳定性的存储服务和与之相关的操作接口,能够通过GUI,命令行,API等工具方便的管理存储。

在使用OSS之前,需要先购买OSS服务,这里使用标准的存储包即可,它能够满足日常图床使用的需求,如果仅仅用来放图,那40G的流量完全够用,如果你感觉不够可以再加。其他的套餐略贵而且可能不符合图床制作的需求,这里就暂不考虑了。

半年的OSS只需要不到五块钱,非常便宜,即便是买五年的也只需要不到50块钱,是一个性价比很高的选择。

(写博客时我已经购买了,所以这里显示我已经购买,一开始买了半年的试试水,然后发现OK,那我先冲他五年的)

购买之后,你就可以在控制台里看到OSS管理界面了。

OSS存储配置与密钥获取

购买了OSS服务后,需要首先在Bucket列表里新建一个Bucket(可以理解为存放数据的容器),用于存储内容,配置在下图中说明:

这样操作之后你就可以获得一个新的Bucket,然后在点进这个Bucket,选择文件管理,并新建一个用于存放图片的目录。

可以在这里测试一下上传一张图片,然后点击图片文件名可以看到URL链接,就说明成功了。

接下来为了能够以API或第三方软件的形式操控你的OSS,需要为那些程序提供你账号的授权。阿里云官方的最佳实践是不建议使用全局的AccessKey,因为一旦泄露将导致整个账号被别人完全控制,这将出现不可预料的安全后果,可以遵循最小授权原则,使用RAM访问控制建立子账号,为子账号添加仅OSS的用户权限,并在为第三方提供时使用子账号,这样可以保证权限的安全性。

一般在你创建AccessKey之后,它会为你提供一对ID和密码,将这个ID和密码保存下来,放到安全的地方存储即可。

PicGo下载与配置

PicGo是一个用于快速上传图片并获取图片 URL 链接的工具,Typora官方推荐。

GitHub项目地址:https://github.com/Molunerfinn/PicGo

在Releases下面找到发布版本,尽管他现在说2.3是beta版本不稳定,但2.2版本貌似有一些奇怪的bug,所以这里推荐直接下载最新版本。

下载安装之后打开,进入配置界面。在图床设置→阿里云OSS中修改下面设置。

哦对了,最后不要忘了点一下设置为默认图床然后再确定。

关于上图中的存储区域,可以在OSS管理控制台的概览→访问域名中看到。

设置完毕之后,在上传区测试一张图片,如果提示上传成功,相册里也有这张图,那就OK了。

Typora配置

最后一步,打开Typora,配置绑定PicGo

在设置→偏好设置→图像中,选择插入图片时的操作为上传图片,并把对本地和网络图片的规则应用打勾,然后上传服务那里选择PicGo(app),并选择exe的路径,它在上传时会自动打开这个软件,平常的时候PicGo默认就在后台挂着,需要传图,粘贴一下就秒传了,很方便。写完博客了也可以把PicGo关掉节省内存。

这样一个基本自动的图片上传就做好啦~

注意

自动上传的路径不能有中文,否则会上传失败..

挖坑

目前这套解决方案已经解决了图片上传的问题,但在实际使用时,对于原图片经常需要进行一些尺寸压缩和画质压缩,以便于降低大小从而能达到快速加载,目前的图片优化仍然是通过我人工完成,我打算后面写一个更好用的方法解决这个问题。

这套方案还暂时没有和阿里云的全站CDN加速结合起来,因为我的网站没有备案。目前正在跑备案流程,如果通过了的话,再加上CDN加速,那博客加载速度可能就要起飞了,大概就要告别cloud flare和GitHub pages啦(手动滑稽

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2018-2021 Shawn Zhou
  • Hexo 框架强力驱动 | 主题 - Ayer
  • 访问人数: | 浏览次数:

感谢打赏~

支付宝
微信