跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 人手一个ipfs图床,文件床
未分類
17 6 月 2021

人手一个ipfs图床,文件床

hjvn2211445 大佬有话说 :

人手一个ipfs图床,文件床

本帖最后由 hjvn2211445 于 2021-6-17 23:28 编辑

简单研究了一下ipfs上传文件返回链接,主要用到两个东西API和网关

弄了个图床https://ipfs.xkx.me/
传mp4。avi啥的也可以吧

静态代码放在ipfs上,实际文件地址 https://ipfs-1.xkx.me/ipfs/QmPZtBHJTPojXDpNnvjFBz1Y4noAFKUHDw2BdEyNa6YNcV/
上传API反代的infura

想自己建同款的源码自己F12一下,就3个文件,
修改static/file.js里面的api地址和网关ipfs-1.xkx.me网关地址(我的会停),下面有说怎么建这两个

记录下心得

一是ipfs API,用于上传文件返回文件的hash即cid,

二是网关
https://p.pstatp.com/origin/pgc-image/f99c024c23074d0a83b322472dc1ce8a

网关好整,虽然官方的ipfs.io和cf的cloudflare-ipfs.com都被污染了。可以用自己域名直接A记录ipfs.io的ip 209.94.90.1即可。或者在cf cname过去,同时要开cdn加速。

IPFS API,
infura提供api的https://ipfs.infura.io:5001域名也是被污染了的,可以反代https://ipfs.infura.io:5001
试了cf workers反代会打不开,好像屏蔽了
vercel反代好像文件大于10M就502

另一种方法是自己搭建节点,官方提供各种语言的代码https://github.com/ipfs/ipfs
其中go语言的简单好用,各平台客户端都用,下载直接运行 (https://github.com/ipfs/go-ipfs/releases)

安装后运行ipfs daemon开启节点
其中5001端口是API,8080端口是网关
https://p.pstatp.com/origin/pgc-image/b6d96f789fae417e93642499541e1bf2

节点面板可以看到当前节点下的文件,连接的其他节点等等。
网络一直在跑,还耗内存

https://p.pstatp.com/origin/pgc-image/feeadd6919db4ba19623f9920701bbe8

命令行可以上传本地文件很方便,还可以文件夹(https://github.com/ipfs/go-ipfs#usage)
ipfs add -r /folder

http api相关文档(https://docs.ipfs.io/reference/http/api/)
适合单文件,如果想用来传文件夹好像会相当复杂
其中图床要用到的上传API是http://127.0.0.1:5001/api/v0/add

curl -X POST -F file=@myfile "http://127.0.0.1:5001/api/v0/add"

可以将静态项目部署在ipfs上

例如我的图床,源码在ipfs文件夹
/export # tree ipfs
ipfs
├── index.html
├── ipfs.zip
└── static
    ├── file.js
    └── style.css

1 directory, 4 files

上传到 ipfs,之后好像节点要开一下才能分发出去,之后我就关了节点了

/export # ipfs add -r ipfs
added QmSYL1xCB1jGWRbpdxRHNgbKvH3RfdqqBQuHZ1qMrHdW78 ipfs/index.html
added QmeXHY5U75UC424Rz3NnAFF8tHcGYSdy2xhPAezZf6MRby ipfs/ipfs.zip
added QmbKxqUkEq83RWLSJJUK8edZAexYtcNkgTgrnw15E7dcQg ipfs/static/file.js
added QmcQL4DtC9gMHjmTHpv4VXvD58KKmM2kyJdL5jTa2i7vT8 ipfs/static/style.css
added QmeakcL1JgEHn62LXannSW6U5z6kcVfifsdpXC8HpDCRMq ipfs/static
added QmPZtBHJTPojXDpNnvjFBz1Y4noAFKUHDw2BdEyNa6YNcV ipfs
36.96 KiB / 36.96 KiB [====================================================================================================================================] 100.00%
/export # ipfs pin add -r /ipfs/QmPZtBHJTPojXDpNnvjFBz1Y4noAFKUHDw2BdEyNa6YNcV
pinned QmPZtBHJTPojXDpNnvjFBz1Y4noAFKUHDw2BdEyNa6YNcV recursively

在cf解析设置
ipfs.xkx.me cname指向ipfs.io,要开cdn加速(不开加速就A指向209.94.90.1)
ipfs-1.xkx.me cname指向ipfs.io,要开cdn加速,做网关用
_dnslink.ipfs-1.xkx.me TXT记录 "dnslink=/ipfs/QmPZtBHJTPojXDpNnvjFBz1Y4noAFKUHDw2BdEyNa6YNcV"

这时访问 ipfs.xkx.me 就等于 ipfs-1.xkx.me/ipfs/QmPZtBHJTPojXDpNnvjFBz1Y4noAFKUHDw2BdEyNa6YNcV

.还阔以,还是票的unicloud的阿里oss速度快
upup.xkx.me

dwf135 大佬有话说 :

大佬牛批

Anonymous 大佬有话说 :

好

滴滴单车 大佬有话说 :

Cloudflare 还有个 cf-ipfs.com 没被污染

tomcb 大佬有话说 :

速度不错啊。

https://ipfs-1.xkx.me/ipfs/QmNiMRzULELxowSDmAunyRmzBenq5Va5YotSm1WkvyBX2n

micms 大佬有话说 :

终于等到大佬公布教程https://cdn.jsdelivr.net/gh/hishis/forum-master/public/images/patch.gif

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具