lemooljiang avatar

Hiveblog的图片缓存功能很不错,顺利解决IPFS的缺席问题!

lemooljiang

Published: 07 Nov 2025 › Updated: 07 Nov 2025

Hiveblog的图片缓存功能很不错,顺利解决IPFS的缺席问题!

话接上回,由于IPFS的无权限导致服务器云盘爆满,无奈之下,只能将整个IPFS删除!我倒是想将自己的数据保留下来,可是因为IPFS的机制,它的数据都是细小的block组成,根本无法分辩哪个是哪个文件。

miao.jpg

删除IPFS后,喵星没有图片啰!

miao2.jpg
@lemooljiang/posts

在打开Peakd时却又发现图片竟然还在呢!这不由得喜出望外!赶紧查下图片地址,都是这种格式 https://images.hive.blog/1536x0/https://ipfs.ilark.io/ipfs/QmR98gViK8kXp3ELYJHMd7oK1SVpMawifsrfiPiCgRTA9v 不错,这是将图片都做了缓存。这也是有些是临时图床的解决方案。既然知道了方法,那就着手解决吧。

解决方案

解决方案比较直接:替代链接即可。 也就是在原有图片链接的基础上加上缓存的地址就可以了,以下是代码:

const replaceImage = (text) => {
  // https://ipfs.ilark.io/ipfs/QmbN9kGo63D1EeVwfcvnAakZiYK5m3rKXf2HY3yTegefK9
  let reg = /https:\/\/ipfs\.ilark\.io/g  //从md中提取链接
  if (reg != null){
    let newText = text.replace(reg, 'https://images.hive.blog/0x0/https://ipfs.ilark.io')
    return newText
  } else {
    return text
  }
}

整完后发现图片是可以显示了,可是那是在梯子开着的前提下!有没有可以直接打开的方案呢?

Nginx反向代理图片服务器

图片服务器https://images.hive.blog在国内不能直接打开,那用Nginx反向代理可以解决么?能想到这一步,问题差不多就解决啰!

先创建好网站,装好https证书。再更改配置,设置好反向代理,搞定!

location / {
        proxy_pass  https://images.hive.blog/;
        proxy_ssl_server_name on;
        proxy_set_header Host images.hive.blog;
        proxy_set_header Connection '';
        proxy_http_version 1.1;
        chunked_transfer_encoding off;
        proxy_buffering off;
        proxy_cache off;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

Nginx的主要配置如上,更改好图片服务器就好啰。

miao3.jpg
https://miao.ilark.io/lemooljiang

喵星人的图片功能恢得正常啰!

Leave Hiveblog的图片缓存功能很不错,顺利解决IPFS的缺席问题! to:

Written by

Designer , Poet , Technology enthusiasts

Read more #cn posts


Best Posts From lemooljiang

We have not curated any of lemooljiang's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.

More Posts From lemooljiang