Hexo-配置腾讯云对象存储COS作为图床

一些废话

之前为了图方便将图床挂在github,后来发现移动端访问时所有图片都加载不出来,这可不行啊,翻来想去最后决定用大厂的对象存储当图床。用腾讯云的原因如下几点:

  • Typora内置的上传插件支持PicGo,这点太赞了,对静态博客极度友好

  • PicGo的内置腾讯云对象存储上传插件

  • 便宜

  • 群友推荐

  • 本人域名和云服务器均在腾讯云购买

OK,废话不多说,开始了正文。

查看PicGo配置项

首先打开PicGo,Windows和Mac打开这玩意儿都是启动在状态栏,所以不要一点点点,找一下状态栏,它已经启动了。PicGo默认是传到SM.MS ,点击左侧【图床设置】>【腾讯云COS】,把【COS版本】打到V5,看看需要填写哪些参数,等会配置COS的时候就可以填进去。

配置腾讯云COS

打开腾讯云官网,没注册的先注册。进入对象存储控制台,点击【创建存储桶】

所属地域选择你最近的城市,名称自定义,访问权限我建议选择【公有读私有写】,否则外部无法通过域名访问到COS中的内容。

选择公有读私有写之后弹出一个注意,大概意思就是如果你开放了公有读,外部就可以随意读取,不安全且会消耗下行流量。但我传的是博客图片,隐私性不高所以没事,流量这个等会儿再处理。

高级可选配置不需要,服务端加密的话作为图床应该是不需要的,直接下一步,然后确认配置就可以创建成功。

配置桶名称&区域

存储桶列表里面,就可以看到刚才创建的存储桶,其中存储桶名称所属地域是填写在PicGo的设定存储空间名确认存储区域,可以直接复制填写进去了。

配置secretId、secretKey、appId

打开腾讯云访问管理控制台,如果当前是主账号进去会有个高风险提示,我试了一下创建子账号,很麻烦,再加上腾讯云这些页面的功能甚多,引导做的也不太好,兜了一圈最后放弃了,直接用主账号访问了。有兴趣的同学可以自己尝试看看,我这里直接【继续使用】了

点击新建密钥,把密钥的APPID,SecretId、SecretKey填入PicGo对应的输入框中。

除了必填项,这些非必填项如果有的话也可以填一下,我是没有填,因为我的图片直接放在COS的根目录,没有做目录处理,其实最好是做一下的,以免管理混乱。

设置好之后点击确定,并点击【设为默认床图】,尝试一下在Pic上传区将文件传上去。注意:PicGo无法预览对象存储中的文件,但可以复制它的链接。拿到链接后直接放到博客里面,部署到本地或者github(白名单内的IP或域名),即可查看到图片。

到这为止,基本的上传配置就结束了,如果有错误或者对腾讯云平台不懂的地方,可以在腾讯云查看相关的文档和售前客服,这里点名夸一下腾讯云的文档和机器人客服,做的蛮好的,问题都会给你详细的解答,很细节。

配置防盗链

由于我们配置的桶是公有读私有写,在外部是可以随意访问(官方的说法是可被任意匿名用户访问),因此需要开启防盗链,只允许我们配置的域名/IP访问桶内文件,点击桶右侧的【配置管理】

点击安全管理>防盗链设置,点击【编辑】,设置当前状态为【开启】,选择白名单,填入自己的域名或IP

由于我的静态文件放在云服务器上;网页项目代码放在github pages;且配置了相关的域名。因此我的白名单设置为:

  • 自己的域名
  • github pages的域名
  • 云服务器本地调试的IP:4000

这样配置之后,白名单内的域名就可以访问到COS中的文件了。现在测试一下防盗链是否生效。

打开我的某一篇文章,查看第一张图片的图片地址为:

1
https://blog-cnd-1307088890.cos.ap-guangzhou.myqcloud.com/image-20220808104848697.png

ok ,我打开博客园后台,点击插入图片,输入图片地址URL,会发现下方的预览不生效,应该是防盗链生效了

发布文章再次确认一下,图片是看不到的,确定防盗链功能已经生效

事实上直接在本机测试也可以(前提是本机IP不在白名单中),打开浏览器访问该图片地址,会发现同样无法访问

有的人可能会说,看不到人家会截图,但截图是他的事跟你没有关系,如果他拿到你的图片地址可以随意使用,就会消耗你的下行流量,流量是要钱的,这就跟你的钱包相关了。所以防盗链的功能是非常有必要配置的。

温馨提示

  1. 如果你是桌面端用户(win、mac)搭建的静态博客,强烈建议使用Typora+PicGo写文章,不能太赞了。Typora的偏好设置>图像中可以配置PicGo,配置完后从Typora中上传图片到腾讯云对象存储只需右键图片,点击上传图片即可。

  1. Typora也有预览图片功能,Typora并没有在我们的白名单中,但也许是有缓存,在上传至COS几分钟后开始消失(防盗链功能生效)。所以建议在文章全部写完之后,再全部上传,否则会提前看不到图片,多少有点懵。

  2. 关于如何在对象存储中获取文件外部访问的链接:在文件列表页点击右侧【预览】,文件打开后右上角有个【复制对象地址】,那就是外部访问链接,而不是什么对象地址、临时链接。

关于价格

我目前是用了一天时间,而且我的网站才刚搭建,人数并不多,只有一些我自己、群友或者身边朋友会访问,提供一下我目前的访问量吧

参数
总访客量 343
总用户数 74人
建站时间 6天19小时
对象数量(图片数) 211个
存储量 29MB
本月总流量 14.92MB
本月请求总数 1287次
存储类型 标准存储
存储容量

目前我所了解到的是,首次开通COS服务的个人用户会赠送50GB的存储额度,有效期180天,到期之后不可续费,需要重新购买资源包

就赠送的50G180天来看,价值应该是35块钱,折后约24块,在价格计算器里可以自己算出来的。资源包的生效日期是可以调整的,这个可以注意一下。加购数据处理资源包和分发网络没有特殊需求就不要。

我目前还没有购买,不过也是打算准备买了,目前打折优惠还可以。就算买2年+20G也才38块钱。

流量

这里的流量主要指外网下行流量,流量比较贵,最低配置每个月10G+2年要81块钱

读写请求

请求是最便宜的,最低配每月10万次+2年的配置是1.63元。个人网站的请求应该不会太高,所以都配置最低就好了。


Hexo-配置腾讯云对象存储COS作为图床
https://zhouyinglin.cn/post/84c67fbf.html
作者
小周
发布于
2022年8月12日
更新于
2022年12月15日
许可协议