如何解决免费图床不可靠的问题

74 天前
 chenjia404

在博客、论坛的各种环境,经常需要图床用于保存和分享图片,但是很多付费和免费的图床都有一个问题,可能比较长时间后(也有可能短时间),图床网站不在了……

一般来讲,每个图床网站同一个图片会生成不同的链接,导致一个图床挂了,就会让所有链接失效,而且只能新上传到一个图床,所有老链接只能手动一个一个修改。

为了解决这个问题,ipfs 图床 使用的了 ipfs 的技术,同一张图片每次上传的文件链接都一样的,然后通过 p2p 技术,一张图片链接可以通过多个网站同时打开。

原理

每个图片上传后,会根据图片文件生成固定的一个哈希,这个哈希规则是通用的。然后通过这个哈希值,可以在全球几百个的网站访问这种图片,如果其中一个网站挂了,更换一下图片链接就马上打开了。

一个图片被多个网站打开后,图片就被复制更多份,让图片的可靠率更高。

使用方法

在线网站

打开ipfs 图床 ,然后上传图片获取图片链接地址。

客户端上传

下载 ipfs-desktop 客户端,在客户端里面上传图片,然后获取图片地址,然后修改图片的域名。

这个方法有一个好处,始终保证你自己掌握一份图片备份,然后通过 p2p 技术,其它网站就可以随时打开这张图片。

如果你追求你的图片 100%可靠性,就需要使用这种方式。

优势

原文: https://ipfsscan.io/post/2024/08/%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%E5%85%8D%E8%B4%B9%E5%9B%BE%E5%BA%8A%E4%B8%8D%E5%8F%AF%E9%9D%A0%E7%9A%84%E9%97%AE%E9%A2%98/

4510 次点击
所在节点    奇思妙想
62 条回复
gbadge
69 天前
gbadge
69 天前
不好意思,楼上的链接衔接没处理好,重发一遍,支持 ipfs
一直认为 ipfs 是一项很好的技术,这个网站有更多的 pin 服务:
https://ipfs-shipyard.github.io/pinning-service-compliance/
防止以后的人们看不到,所以另附网页存档:
( 1 ) https://archive.ph/gIaKL
( 2 ) https://web.archive.org/web/20240705152256/https://ipfs-shipyard.github.io/pinning-service-compliance/
cnrting
69 天前
可 ipfs 真的真的很慢很慢
CSGO
69 天前
第一次了解到这个 ipfs ,是不是理解就是你的服务器现做了图床,然后如果正好有人也装了 ipfs 客户端,那么打开这个图,会被缓存,然后在缓存被清空前,且正好在线,那么它也就成为节点?
h404bi
69 天前
「 100%可靠性」其实是对 ipfs 有些误解,ipfs 存在着与 BitTorrent 同样的 p2p 局限。所谓「 100%可靠性」只对资源生产者而言(除非自己删掉了最后一份备份),在消费端非热门资源的可访问性一直不太行,很多情况下访问一个 cid 就卡在那里了很长一段时间(梦回 BitTorrent 挂着很长时间找寻 peer ),极大消耗耐心。

尤其是个人博客图片,绝大多数都是非常冷门低访问量的资源,这种劣势会被放大。这时候提高可靠性,无非就是让消费端访问固定一个 gateway (背后是生产者自己/代理的 Pinning ,消灭掉寻址过程),这样又回到了自托管/代托管方式。使用 ipfs ,只是多了一个广播到网络上其它 peers 的功能。对于博客图片这样的场景,换来的可能是比用传统图床更差的用户体验(尝试 gateways 的 overhead )。

https://gateway.ipfsscan.io/ipfs/QmNr8Ffhb7GbtPE2YVsK8MAeULyuKd71W9JMdhnYgxA3qm 换成
ipfs://QmNr8Ffhb7GbtPE2YVsK8MAeULyuKd71W9JMdhnYgxA3qm 让 IPFS Companion 去挑 gateway 立马就能体验到这个 overhead

IPFS 很好,但就这个使用场景而言,我觉得 IPFS 是不如传统图床甚至于 Arweave 的。
liudon
69 天前
还得保证这个文件有被 pin 吧?不然节点的缓存过一段时间就没了
我的 ipfs 站点 https://liudon.eth.limo ,我现在是在 vps 和 filebase 各 pin 了一份数据,保证文件可以访问到
Livid
69 天前
@liudon 如果一个 CID 持续被从不同的 gateway 上访问,其实就是在每个 gateway 的 IPFS repo 里都存了一份。不一定永久,但很多情况下其实够用了。
Livid
69 天前
这种一个地方上传,然后可以从无数个其他地方拿到的感觉,真的太好玩了。

比如这是 Planet 的轻量级版本 Croptop ,我把图片拖拽进去,就可以加入到本地的 IPFS repo ,然后这个 CID 又可以从楼主的 gateway 里拿到:



https://gateway.ipfsscan.io/ipfs/QmfLTaFU17G4GqfdcQLk4XJ163wkyejzrnPZkXmB35DVgU
Livid
69 天前
中长期可能会面临的一个问题是如果单个节点的 repo 里的 CID 数量到达 1e5~1e6 之间的时候,IPFS 的 reprovide 可能会出问题。
ochatokori
69 天前
我的博客就是内容只存图片后缀,前端在列表中找可用的前缀
chenjia404
69 天前
@Livid #28 我的节点都有几百万的对象以上,我保存了一份维基百科的最新镜像,目前来看没有发现影响性能。
Livid
69 天前
@chenjia404 之前有人基于 IPFS MFS 来做 Linux 包镜像,遇到过一些问题。

https://github.com/ipfs/notes/issues/296#issuecomment-707912467
chenjia404
69 天前
@Livid #32 看日期是 2020 年的,最新版应该解决了,这个 cid 里面有几百万个文件 bafybeichypzjch6uuo5pe6btkctcusdwvp77xidgbh5kc2ipowvuaexhiq
qweruiop
69 天前
不知道有啥方法可以保障 1 年之后数据不丢失不。。。
jackkkie
69 天前
所以为啥不部署个 minio ?
crz
69 天前
还是依赖 ipfsscan.io 这个域名吧
chenjia404
69 天前
@crz #36 这个域名也可以随时换,路径是一样的,随时都可以搭建一个新的网站出来,老的图片一样访问。
crz
69 天前
@chenjia404 博客好说,但是博客对图床的依赖相对有限
类似论坛的环境,要一个个帖子编辑过去吗,像是 v2 ,直接编辑不了
chenjia404
69 天前
@crz #38 对,有这个问题,论坛可以解析路径,另外可以用自动跳转的网关,网关不保存图片,但是会自动跳转到最新可用的网关。
我这个域名默认的网关就是跳转网关。
wogogoing
69 天前
路过的来瞅瞅我的呗:
https://www.v2ex.com/t/1071339#reply23

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

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

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

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

© 2021 V2EX