使用阿里云对象存储 OSS 这样的东西来做图床,如何解决图片在网站内删了,但可能还占用 oss 的问题呢?

2021-11-05 12:54:49 +08:00
 find456789

下文中: OSS = 对象存储, 可简单理解为图床

比如 一个博客

里面插入了 10 张图, 插入的时候上传到了 oss 里

后来我新建了一个博客, 引用了之前博客里的某些图:

<img src="旧图的连接" />

后来我删除了第一个博客, 其中,有些图片,已经完全没有被博客引用了, 算是无效图片了

那有啥办法,排查出无效图片吗?

我想把无效图片找出来, 从 oss 里删除,免费浪费钱

我目前想到的方案是:

专门建立一个表,每个上传的图, 被哪个帖子引用了, 都记录一下

当某个图的引用为 0 , 就去 oss 删除这个图

但具体的代码,我还没有写

不知道这方面是否有现成的方案、代码、思路 呢?

谢谢

1208 次点击
所在节点    问与答
8 条回复
yushiro
2021-11-05 13:01:17 +08:00
你删除博客的时候,顺手把博客里面的图片也从 oss 上删了不就好了。
longsays
2021-11-05 13:06:07 +08:00
为不同的博客创建不同的目录,删除博客删除目录,图片储存成本并不高,没有引用放着就放着呗
find456789
2021-11-05 13:21:04 +08:00
@yushiro

可能之前博客里的图, 被我在新博客引用了, 这时候就不能直接把第一个博客里的图 直接删掉, 否则 其他博客引用就会 404
ch2
2021-11-05 13:35:18 +08:00
写个 Python 脚本跑一跑就出来了
renmu123
2021-11-05 13:38:42 +08:00
定时用正则把文章图片跑一遍,然后去 oss 对比一下删了
good
2021-11-05 14:00:02 +08:00
只是博客的话,我觉得完全没必要去删它,浪费精力.
oss 1GB 每月 0.12 元,你一个博客能有多少个 G 的图片?
zhusimaji
2021-11-05 14:12:29 +08:00
oss 存储成本太低了
find456789
2021-11-05 15:19:09 +08:00
@ch2
@renmu123
@good
@zhusimaji

哥哥们说的对, 那我就先不管他, 等以后量大了, 再写个脚本跑一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/813254

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX