事情的起因是“西厢月”中的图片越来越大,担心以后部署的时间会越来越长,且Hexo的相对路径引用不能同时在本地和网站上看到图片,所以早用图床早超生。

下载PicGo

PicGo: 一个用于快速上传图片并获取图片 URL 链接的工具

改为PicList

偶然看到了PicList,发现功能比PicGo更多,界面更美观,并且还有手机版的PicHoro,真的非常好用

与Typora结合

在Typora的图像设置里设置上传服务,实现Typora一插入本地图片就自动上传到网络并改为URL链接

选择合适的图床

SM.MS

loli控

胜在方便易用,但速度和稳定性略差

Github

如果在国外很友好,但在国内速度很慢,只能使用jsDeliver加速,而jsDeliver加速Github有一个仓库最大30M的限制,且仓库设置为公开图片容易被人打包下载,遂作罢

阿里云OSS

最后还是使用了大名鼎鼎的阿里云OSS,花点钱图一个快速稳定,不过我有300元的学生优惠券,因此一分没花

关于CDN

本来已经大功告成,奈何看到CDN加速OSS比单纯OSS价格更便宜,抱着试试新东西的心态就研究了一下CDN,这一研究就又是两天😭

一些名词

  • OSS(Object Storage Service):对象存储服务

  • CDN(Content Delivery Network):内容分发网络

  • 源站:OSS创建的Bucket的地址,可以理解为你的图床的域名

  • 加速域名:字面意思,就是你要加速的域名。把源站上的资源放在加速域名上,这样别人访问加速域名上的资源时自然被加速了

然后把你自己的网站上的静态资源(图片、视频、js、css)的链接都换成加速域名,于是网站得到加速

OSS设置加速域名的好处:

  • 让域名更短,美观,方便记忆
  • 加速域名是主域名的子域名,更加整洁规则
  • 不暴露源站的Bucket名和地理位置
  • 可以有品牌效应
  • 在直接输入URL时可以预览图片而不触发下载

一些痛点

一开始不懂,直接把我的网站设置成加速域名,最后造成的结果就是我的网站无法访问,提示The bucket doesn’t belong to you,具体原因仍未知(猜测是把我的网站设置成加速域名后,访问加速域名上的内容和访问我自身的网站由于用的是相同的地址导致冲突)

实际上应该用一个不用的三级域名作为加速域名,来起到专门作缓存文件的作用,原因在上面已经说过了

发现

  • 好用的图片压缩网站 https://docsmall.com/image-compress

  • https://ping.chinaz.com/ 快速看CDN是否部署成功(通过不同位置的IP Ping网站)

  • nslookup -qt=cname ymjrhk.com 查CDN

    非权威应答:
    ymjrhk.com canonical name = ymjrhk.com.w.cdngslb.com

  • 快速更改图片链接:Typora 全局搜索 huangkai12358.oss-cn-shanghai.aliyuncs.com 改为 cache.ymjrhk.com

  • 更多大佬的博客

未来

  • OSS和CDN可以搭建私人云盘,可以尝试一下,不过没什么大用
  • AList,可以白嫖各大网盘的空间
  • 尝试将Hexo托管到阿里云OSS上(但还是夸夸Github Page是真好用、良心)

总结

花了三天时间研究这玩意,算是一劳永逸了,真好~