blog/_posts/2022-10-19-web3.md

28 lines
5.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
layout: post
title: 在Web3上搭建一个自己的博客
tags: [Web3, 博客, 搭建]
---
感觉Web3可以真正的为现在的人们使用了呢。<!--more-->
# 起因
最近偶然看到了一个很有意思的东西,叫[xLog](https://xlog.app/)大概试了试这是在一条叫Crossbell的区块链上使用智能合约操作和存储元数据并把实际数据存到IPFS上的项目。看了一眼还挺有意思就在上面搭了一个自己的[另一个博客](https://mayx.xlog.app/)另外他们还使用这套方案写了一个类似Twitter的社交系统也叫Crossbell非常的人性化可以说是把Web3真正的带给了普通用户。至于怎么搭他们的项目成员写了篇教程[5分钟就能搭好在Web3的博客](https://song.xlog.app/5m-zh)。
不过使用xLog那就不是技术人员的事了而是让一个不怎么懂电脑的人来做的事情了。另外他们宣称数据是“Permanently stored on the blockchain”这一点我不太认同要是说存到了Web3成为了其他人无法修改的数据这倒是没什么问题但是存到IPFS上只要没有被Pin就有可能在节点GC的过程中永远消失。另外我其实对区块链接触不多不清楚能不能完整的同步他们的链如果不能那就是私链了那样元数据也不能永久保留了……所以我只能说这个平台是Web3可以保证不因为审查而404但是不能在时间的长河中保留信息。
# 技术人员的方法
所以作为技术人员我的博客当然直接上IPFS那更好啦因为他们的平台毕竟可定制性不高而且好多组件不知道有没有可替代性比如以太坊JSON-RPC不过他们的服务好像是都开源了只要这个链可以被同步能搭属于自己的RPC那倒是问题不大。
直接用IPFS客户端直接上传是最原生的办法但是我不喜欢在自己电脑上安一堆莫名其妙的软件像我现在写博客都是直接在Github或者Gitlab上写好然后直接用[之前提到的静态页面服务商](/2022/02/14/move.html)一次性部署好。所以我也希望能有一个类似的服务商能帮我把我的博客上传到IPFS上。最后我找到的服务商就是[4EVERLAND](https://www.4everland.org/)。它可以绑定Git仓库并监听变化当有变化的时候就会自动部署到IPFS上并且他们提供免费的Gateway来直接访问在IPFS上的内容非常的不错。不过有个问题就是不知道什么原因它的部署模板里面没有Jekyll的语句然后前端还不能自定义……所以只能靠抓包的方式来修改成自己想要的部署语句。
# 从IPFS直接访问
使用4everland部署完之后直接访问当然也很好但是总感觉和其他服务商差不多谁知道它读取网页到底是从自己服务器上还是IPFS网络上读取呢所以我还想整个更好的方式从IPFS上读取也能证明它确实在IPFS上了。
直接通过Gateway去访问我的博客当然也没问题但是每次部署的时候CID是会变化的那这样我想访问也不方便啊……后来我听说可以把CID用一种叫dnslink的方式记录到DNS里这样就能通过固定又好记的方式来访问。不过那时候我不知道怎么访问dnslink记录的网站……而且每次部署CID会变那部署完我还要更新我的DNS记录啊后来我查了查原来还有一种叫IPNS的东西看了一眼4everland的控制台原来每个网站它也会生成一个固定的IPNS然后用dnslink可以指向IPNS。那如何访问呢IPFS又没有一个IP地址光TXT记录肯定不够的吧后来我才知道原来要用CNAME解析到Gateway才能访问设置之后每次访问Gateway就会自动解析在TXT记录里的dnslink了。现在 <https://ipfs.mayx.eu.org> 这个网站就可以直接访问我博客在IPFS上的数据了。这不比xLog自由度高不过我这个没办法存评论数据可能xLog的特色就是社交吧毕竟他们的主项目Crossbell就是主打的社交。希望可以整一个单独的插件专门用他们的网络来为我这种静态博客提供评论功能也是一个不错的选择毕竟ETH公链上的手续费太贵啦😂
# 更好的永久存储
前面我说过IPFS只能防止篡改但不是作为永久存储的方案上公链当然是也一种永久存储的方案但是成本太高了我付不起。后来我了解到一种叫做Arweave的东西可以永久存储你的数据不过这不是免费的想存得要付AR币到链上才可以。还好4EVERLAND提供了一些免费上传到AR网络的额度非常的不错这样我以后每次上传我会把地址写到[Github的Releases](https://github.com/Mabbs/mabbs.github.io/releases)里面,进一步的提高我博客永久存储的可能性。
另外我还听说似乎还有一种叫做ZeroNet的东西也是通过分布式的方式存储数据据群友所说也能在一定程度上永久存储。不过我试了试访问实在是太困难了😂而且现在程序也不在维护了所以也就放弃了。
# 感想
Web3真是发展的越来越好了希望能有更多的人参与其中一起创建不受管束的网络吧。还有实现我的Mayx Forever计划😝
不过说来我也挺担心那个Crossbell的项目作为不受监管的平台只要知名度上来肯定会被滥用到死希望他们能活得更长一些吧。