『文件』Filecoin主网上线在即,今天教大家如何在IPFS上部署网站


_本文原题:Filecoin主网上线在即 , 今天教大家如何在IPFS上部署网站
如果想要学习IPFS和Web 3.0 , 那么 , 我们需要先开始探索它们 , 并尝试将我们的网站上传到那里 。 今天 , 就来开始我们的学习之旅吧 。
『文件』Filecoin主网上线在即,今天教大家如何在IPFS上部署网站
本文插图
什么是IPFS?
IPFS到底是什么呢?为什么当我们提到Web 3.0 , 我们就不可避免地提到IPFS呢?
IPFS(星际文件系统)是一个能够共享内容的分布式网络 , 他的设计并不复杂 , 但却非常有趣 。 而我们之所以称IPFS为星际文件系统 , 因为IPFS的目标是建立一个能够在行星间工作的网络、一个能够更好的跨地球的通信网络 。
IPFS是一个分散的网络 , 在该网络中 , 通过BitTorrent等多种方式连接对等方并共享文件 。 基本原理与传统的Web并不同 , IPFS中的文件是根据文件的内容提供服务的 , 而传统的Web是根据文件的位置提供服务的 。
例如 , 谷歌将隐私权政策文件托管在Google服务器上 , 政策内容无关紧要 , 因此这是根据域名寻址的 , 我们将这称为location-addressing(域名寻址) 。
但是 , IPFS是使用文件的哈希值通过文件的内容来标识文件的 。 假设您要阅读:“XKCD#327—Exploits of a Mom” 。 这使得断开的链接不太可能 , 因为只要有一节点存储了数据 , IPFS网络就不可能出现"404"错误 , 我们将这称为content-addressing(内容寻址) 。
如何在IPFS网络上托管?
当我们打开一个浏览器 , 很明显 , 网址都是以HTTP开头的 , 也就是说 , 我们现在的网站是托管在HTTP超文本传输协议之上的 。
『文件』Filecoin主网上线在即,今天教大家如何在IPFS上部署网站
本文插图
那么 , 我们该怎么样把我们的网站部署在IPFS之上 , 或者是如何在IPFS之上部署静态内容(例如个人网站)呢?
接下来 , 我会列出可用于任何文件 , 例如纯HTML文件 , 由静态网站生成器(如Jekyll , Hugo , Hexo和Gatsby)生成的网站 , 甚至是媒体文件的部署方法 , 因此 , 让我们开始吧 。

  • IPFS 桌面
如果您已安装并正在运行IPFS Desktop , 则可以使用常规文件选择器添加文件 。 只需导入包含您静态网站内容的目录即可 。
『文件』Filecoin主网上线在即,今天教大家如何在IPFS上部署网站
本文插图
  • IPFS CLI
IPFS CLI允许使用add子命令添加文件和目录 。
【『文件』Filecoin主网上线在即,今天教大家如何在IPFS上部署网站】
『文件』Filecoin主网上线在即,今天教大家如何在IPFS上部署网站
本文插图
提示:在您的网站中使用相对链接非常重要 , 因为IPFS网关的URL类似于<gateway>/ipfs/<cid>/file.ext 。
  • Pinning
在最后一节中 , 我们添加的文件可以在我们的 IPFS节点网络中找到 , 这就是IPFS网关能够解析它并将其显示在浏览器中的原因 。
但是 , 一旦关闭IPFS daemon , 该站点很可能将无法访问 。 即使在IPFS上请求了某些内容之后 , 接收节点也成为该内容的主机 , 但是在12小时后将对这些内容进行收集 。 那么 , 我们如何在没有服务器的分散式网站中全天候备份您的网站?
Welcome , Pinning
在IPFS上固定一些内容的节点将永远托管它(直到取消pinning它) 。 诸如Pinata之类的固定服务 , 可将文件固定在其IPFS节点上 。 如此一来 , 网站将始终可用 。
在Pinata中 , 如果内容已经上传到IPFS , 则可以上传文件或仅提供其哈希值 。 这是我固定我们上面上传的示例网站的方式 。