IPFS教程:如何在IPFS上托管个人网站

您正在阅读的网站可以完全使用,而无需在服务器上运行后端。这样的网站被称为静态网站。

您正在阅读的网站可以完全使用,而无需在服务器上运行后端。这样的网站被称为静态网站。
静态网站向浏览器提供所有内容和逻辑(JavaScript)。所有交互(例如搜索或单击内部链接)都是通过包含的 JS 脚本进行的。虽然这听起来像是一个外行人所期望的,但这与互联网的当前状态相去甚远。
在早期,许多网站只包含静态 HTML 站点。今天,许多现代网站依赖于一个运行的集中式后端服务器。这使动态体验成为可能,但也会导致链接失效,因为特定网站(及其url)的寿命有限。许多人至少经历过一次死链接,随着互联网的日益老化,这个问题预计还会继续恶化。

内容可寻址存储

最近对互联网进行分散化的努力再次导致了诸如内容可寻址存储之类的技术。
互联网上的普通 URL https://lpfann.me/是任意选择的单词,与实际内容无关。
内容寻址使用数学哈希函数将网站的内容压缩为称为 hash 的短字符串。哈希函数的妙处在于,它们很可能会产生唯一的输出以及这样的唯一地址。
这允许人们仅基于内容哈希即可使用和交换内容的用例。IPFS(星际文件系统)就是这种应用的一个例子 。
IPFS 引入了一种用于内容的地址方案,还使用了不使用中央服务器的对等网络进行信息交换。当使用 IPFS 应用程序的人了解其他节点需要的信息时,他们会自动充当其他对等方的服务器。
这样就无需大型中央服务器或内容分发网络,即可实现更健壮和分散的 Web。
要使用 IPFS 托管网站,我们需要它是静态的。

将网站设为静态

该网站是使用 Hugo 构建的 ,已经产生了静态输出。启用 relativeURL 与 IPFS 寻址一起使用仅是重要的 。
我们还在为雨果使用学术主题。Academic 使用多种外部字体和 JavaScript 资源来增强内容表示。虽然完全有可能托管引用非 IPFS 资源的 IPFS 网站,但它并未完全分散。
幸运的是,Academic 主题还提供了一个下载工具,可将所有外部资产保存在网站文件夹中。
在撰写本文时,主下载器尚不支持所有资产,但是一个开放的 请求请求增加了对大多数缺失内容的支持。丢失的另一件事是字体,这些字体最初来自我们手动下载的 Google 字体 CDN。
现在,我们有了一个运行在本地字体和 JavaScript 资产 1 上的完整网站。这样,您可以下载网站文件并终止 Internet 连接,您将获得相同的体验。

托管 IPFS 网站

如果我们使用 IPFS 对网站进行哈希处理,则会得到如下内容哈希:

							
/ipfs/QmSPZuY3K1XieH7M9zh4qs9MEGFf4GZdBv3STaiJpBaC6o
现在,其他人可以直接使用自己的 IPFS 客户端或使用可用的浏览器插件之一来检索网站。
此文章的草稿经过散列并固定到本地 IPFS 节点。
为了使其他人能够检索网站的文件,我们必须保持IPFS节点运行或要求其他人对其进行缓存(固定)。
有所谓的固定服务(例如 Pinata)提供此服务。另一个项目是 Filecoin,它建立在 IPFS 之上。它使用一种区块链来奖励节点以保持 IPFS 文件固定,从而提供金钱激励。
在过去的几天中,我们寻找了将新内容添加到 git 存储库时自动固定此网站的方法 。就在昨天, Textile 宣布了在 IPFS 之上工作的动态存储桶。尽管不是博客文章的主要重点,但他们还介绍了新的 GitHub Actions,它们将内容自动部署到其免费存储桶托管中。我们在基于Gatsby的演示站点上扩展了他们的脚本,以与 Hugo 一起使用。
GitHub Action 构建并将文件推送到 Textile bucket
现在,在每个推送请求之后,GitHub Action 都会编译 Hugo 输出并将其推送到也固定并与IPFS 一起使用的 Textile bucket。
每次更改并推送到存储库后,我们的网站内容都会自动显示在内容哈希下 。

域名解析

为了让人们知道一个站点可以使用 IPFS,可以使用 DNSLinks。这些是附加到 DNS 域的 TXT 记录,它们提示可用的 IPFS 资源。IPFS 浏览器扩展可以检测到这些记录,并在访问此类站点时自动使用 IPFS 进行内容检索。
来自 Textile 的脚本还包括用于 DNS 记录的更新程序,该更新程序将 IPFS 哈希值发布到 Cloudflare DNS 服务。每次手动发行后,此脚本都会更新 DNSLink。
以太坊名称服务(ENS)
要拥有一个完全分散的解决方案,可以使用 ENS 之类的技术 来替代 DNS 系统。
我们的网站也可以在 ENS 域 https://pfannschmidt.eth 下访问,也可以通过过渡链接 https://pfannschmidt.eth.link/ 访问,该链接 使用该 eth.link 服务允许没有 ENS 支持的浏览器访问该网站。
目前,我们手动更新了存储在 ENS 中的 IPFS 哈希,但是将来我们可以使其自动化。

向后兼容

IPFS 仍处于初期阶段。大多数流行的浏览器不支持大多数网络用户所必需的协议。
在此之前,还需要使用 Web 服务器和 DNS 以传统方式托管网站。可以使用 Cloudflares IPFS 网关和 DNS 解决方案通过普通 HTTP 自动提供 IPFS 内容。
目前,此博客由 Netlify 托管, 以支持未启用 IPFS 的访问者。

总结

总的来说,这个过程仍然是一件复杂而艰巨的事情。IPFS 以及生态系统在稳步改善的同时,仍有许多工作要做。
幸运的是,出现了诸如 Terminal.co 之类的新服务 ,它们提供了端到端的分布式托管解决方案。
End
非常感谢您对 IPFS&Filecoin 项目的持续支持。我们很高兴继续与您一起,为人类信息建立一个强大的,去中心化和高效的基础。
FilCloud 帮你迅速了解 IPFS 领域的热点技术和应用
公众号:filcloud

24小时热点

afd爱发电是什么网站 afd登录入口在哪

为什么需要爱发电? 我们认为,长期耕耘一件事或几件事的创作 ...

1741882

SAN币

fc2是什么网站?fc2点击在此访问

FC2是日本最大的乃至亚洲最大的域名服务商,也是一家全面的网 ...

1969026

币团交易所

gpt4.0中文版免费

GPT-4(生成预可训练技术4.0)是一个由OpenAI开发 ...

3933665

维公链

f2pool鱼池官网

f2pool是一个国际性Premine挖矿池,它是一个早期通 ...

1402030

Smart Contract

地铁派上海地铁俱乐部

海派上海地铁俱乐部是由上海市地铁交通公司(SMTC)所创办的 ...

899952

BitKeep钱包

十大虚拟币交易平台app汇总!

自从前两年比特币大火之后,带动了整个虚拟币行业,虚拟币也越来 ...

1148610

一岛

币圈大佬指出:派币(π币、pi币、pi network、兀币)是个无聊的骗局!

派币(π币、pi币、pi network、兀币)是绝对的杀猪 ...

1123193

中值联资讯

中国十大骗局之pi network(π币、pi币、派币、兀币)

中国十大骗局之pi network(π币、pi币、派币、兀币 ...

652760

Web 3.0

crowd1项目在中国合法吗

crowd1项目在中国合法吗?非常明确的告诉你,这是非法的项 ...

1079933

HitBTC交易所

外汇资金盘“海汇国际”涉嫌传销,已崩盘

近日,海汇国际涉嫌传销,资金盘口缺口达数亿,几乎资金全无,资 ...

943390

Bitget

热点专题

虚拟货币传销/诈骗案件的通常做法

当更多人似懂非懂的对虚拟货币有些模糊的概念,还搞不清比特币和 ...

4225595

瓦特(WBF)交易所

gpt4.0中文版免费

GPT-4(生成预可训练技术4.0)是一个由OpenAI开发 ...

3933665

维公链

iBox 链盒科技

据iBox官方消息,9月17日20:00,iBox将正式发布 ...

3410870

iBox

揭秘网络传销行骗七大套路!

不管网络传销打着什么旗号,戴着什么面具,即便有着“72变”, ...

3055365

A网(AOFEX)交易所

Gem和Genie功能大对比

2022年4月25日,OpenSea官方发推宣布收购NFT交 ...

2395214

TopHolder 头号藏家

Genie 就是一个 NFT 市场的交易聚合器

Web3 中的「聚合器」是一个非常重要的组件,例如 1inc ...

2361268

嗨艺购

一文读懂NFT 交易聚合器GEM

购买 NFT 的主要问题之一在于,限制了用户一次只能购买一个 ...

2321380

第九空间

fc2是什么网站?fc2点击在此访问

FC2是日本最大的乃至亚洲最大的域名服务商,也是一家全面的网 ...

1968787

币团交易所

亚洲最大成人平台“SWAG”网站关停,负责人被捕

2020 年,SWAG 发行了 6.25 亿枚治理代币 SW ...

1749969

NFT和元宇宙

afd爱发电是什么网站 afd登录入口在哪

为什么需要爱发电? 我们认为,长期耕耘一件事或几件事的创作 ...

1741276

SAN币