用 Planet + ENS 构建一个真正去中心化的博客
你是否也想拥有一个无需服务器、不会被平台下架、使用自己域名的博客?
这篇文章将手把手带你完成这一切,只需要 3 个工具:
- Planet:macOS 上的开源博客 App
- ENS 域名(如
yourname.eth) - 公共 ENS 网关如
eth.limo或eth.link
什么是 Planet?
Planet 是一款 macOS 上的开源博客应用,它利用 IPFS 和 IPNS 技术将你的博客内容:
- 本地发布到 IPFS 网络(通过内容寻址)
- 自动生成 IPNS 地址(类似“博客永久地址”)
- 可选绑定到 ENS 域名(让访问像
yourname.eth.limo一样简单)
你只需要点几下鼠标,就能拥有一个 Web3 原生博客!

第一步:创建并发布你的博客
操作步骤:
- 安装并打开 Planet App
- 点击左下角
+创建一个新的 Blog - 填写标题、描述、封面图等信息
- 点击 “新文章” 按钮写文章
- 点击顶部的发布按钮
发布后发生了什么?
- Planet 会将你的内容发布到本地 IPFS 节点,每一篇文章、资源都会生成唯一的 CID(内容哈希)
- Planet 同时会用你设备私钥生成 IPNS 密钥对,创建博客的稳定地址:
ipns://{你的 IPNS ID}
- 每次发布后 Planet 都会更新 IPNS 绑定,确保链接永远指向你最新的博客内容
第二步:将博客绑定到你的 ENS 域名
目标是让别人访问:
https://yourname.eth.limo
官方推荐绑定步骤如下:
Step 1:获取你的 IPNS 地址
- 打开 Planet App,右键点击你想绑定的博客
- 选择
Copy IPNS - 你将复制到一个以
k51...开头的字符串
Step 2:编辑 ENS 记录
- 前往 app.ens.domains,找到你的
.eth域名 - 进入 Records 页,点击 Edit Records
- 在
Other → Content Hash字段中,粘贴如下格式:ipns://k51qzi5uqu5dhlv0jq4akf...(你刚复制的 IPNS 地址)
Step 3:提交交易并等待确认
确认之后,你的博客就可以通过:
https://yourname.eth.limo
进行访问。
ENS 设置示意图:

Planet 如何确保你的博客在线?
Planet 发布内容时会:
- 广播到你本地 IPFS 节点
- 推送给 Planet 社区节点
- 被公共网关如
eth.limo缓存后可持续访问
如果想要 永久性在线,建议使用 web3.storage pin 住你的 CID。
补充说明:Planet 的“智能托管机制”
- Planet 自动将博客内容同步给官方和社区节点
- 通过 IPNS 地址持续跟踪更新
- IPFS 网络中访问者也会间接缓存内容
意味着你关机后博客也能继续被访问!
总结
| 项目 | 说明 |
|---|---|
| 内容托管 | IPFS(内容寻址,去中心化) |
| 地址管理 | IPNS(自动指向最新 CID) |
| 域名绑定 | ENS(用你的 .eth 域名) |
| 网关访问 | https://yourname.eth.limo |
| 可用性保障 | Planet 节点广播 + 可选 pin 服务 |
示例
我的博客地址如下,欢迎访问:
https://gptkit.eth.limo
用 Planet + ENS 构建一个真正去中心化的博客的更多相关文章
- 从零构建以太坊(Ethereum)智能合约到项目实战——第23章 从零构建和部署去中心化投票App,decentralization Voting Dapp
P90 .1-从零构建和部署去中心化投票App-01 P91 .2-从零构建和部署去中心化投票App-02 P92 .3-从零构建和部署去中心化投票App-03 参考博文:http://liyuech ...
- 基于NOSTR协议的“公有制”版本的Twitter,去中心化社交软件Damus用后感,一个极端走向另一个极端
最近,一个幽灵,Web3的幽灵,在网络游荡,它叫Damus,这玩意诠释了什么叫做病毒式营销,滑稽的是,一个Web3产品却在Web2的产品链上疯狂传销,各方大佬纷纷为其背书,到底发生了什么?Damus的 ...
- 一个轻client,多语言支持,去中心化,自己主动负载,可扩展的实时数据写服务的实现方案讨论
背景 背景是设计一个实时数据接入的模块,负责接收client的实时数据写入(如日志流,点击流),数据支持直接下沉到HBase上(兴许提供HBase上的查询),或先持久化到Kafka里.方便兴许进行一些 ...
- MaidSafe.net,一个完全去中心的化的云存储系统
MaidSafe.net,一个完全去中心的化的云存储系统 (类似Bitcloud系统) 本帖最后由 tbit 于 2014-3-26 16:11 编辑 已经开发了8年,最近即将推出测试和IPO.开放源 ...
- buckaroo 去中心化的c++包管理工具
buckaroo 是一款去中心化的c++ 包管理工具,使用上,类似yarn(nodejs),cargo (rust) ,使用buckaroo 我们可以很容易集成一个大规模的项目 支持以下特性 直接从G ...
- PPIO去中心化存储的了解和记录
目录 介绍 FileCoin P2P技术给去中心化云存储的好处 剩余资源的再次使用 市场竞争会激发民间的智慧 PPIO的2种冗余模式 全副本模式 纠删副本模式 为什么PPIO要设计支付代理节点? 一些 ...
- Filecoin:一种去中心化的存储网络(二)
开始初步了解学习Filecoin,如下是看白皮书的内容整理. 参考: 白皮书中文版 http://chainx.org/paper/index/index/id/13.html 白皮书英文版 http ...
- Filecoin:一种去中心化的存储网络(一)
开始初步了解学习Filecoin,如下是看白皮书的内容整理. 参考: 白皮书中文版 http://chainx.org/paper/index/index/id/13.html 白皮书英文版 http ...
- serf 中去中心化系统的原理和实现
原文:https://www.infoq.cn/article/principle-and-impleme-of-de-centering-system-in-serf serf 是出自 Hashic ...
- Baccarat是如何运用去中心化治理模式的?
区块链的出现,让大家看到了去中心化的可能.去中心化的数字资产从最初的默默无闻,一路起起伏伏发展了十年,逐渐成为了大众认可的价值存储方式.去中心化的金融,使数字资产的生态建设者意识到,即使没有中心化的金 ...
随机推荐
- HUAWEI USG6505E 如何使用光电互斥口
1.display ip interface brief 2.display int g0/0/4 查看端口 是否为光电互斥口,并确定端口当前状态 Copper 电口 Fiber 光口 3.inte ...
- django实例(1)
Urls.py from django.contrib import adminfrom django.conf.urls import urlfrom cmdb import viewsurlpat ...
- Webkit 实现页面滚动条美化
当页面或者某个容器布局内容超出过后, 就会有滚动条, 但默认的有点丑, 经常需要自己来美化一下, 这里做个笔记吧. /* 美化全局的滚动条 */ ::-webkit-scrollbar { width ...
- 工具:Prisms:漏洞扫描器,棱镜开源版
Prism X 集资产发现.指纹识别.弱密码检测.漏洞验证于一体,采用模块化 YAML 插件策略配置,实现与真实攻击链高度相似的 PoC 验证机制. 跨平台和轻量级设计:支持多种操作系统,易于部署和使 ...
- cf记录
cf2107D \(Question:\)给定一个节点为\(n(1 \leq n \leq 2e5)\)的树,定义三元组\((d,u,v)\)为从点\(u\)到点\(v\)的路径长度\(d\),每次选 ...
- Ubuntu下好用的工具
UML画图工具 推荐:Drawio 参考:https://blog.csdn.net/jsm1010/article/details/112920539 安装命令:sudo snap install ...
- C#实现SSE通信方式的MCP Server
前面的课程,我们使用MCP Server,用的是网络上魔搭提供的. 下面我们一起来实现,用C#实现自己的MCP Server. MCP Server通信方式支持SSE.Stdio. 下面我们先实现SS ...
- Django Web应用开发实战第二章
一.基本配置信息 """ Django settings for myblog project. Generated by 'django-admin startproj ...
- AtCoder Beginner Contest 357-D
Problem For a positive integer \(N\), let \(V_N\) be the integer formed by concatenating \(N\) exact ...
- cmake基础知识
Cmake Cmake变量 Cmake的基本类型只有两种,分别是字符串和字符串列表,使用set命令来设置变量 set(var abc) # abc是字符串,var是值为"abc"的 ...