LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 如何通过IPFS分散网站的权限

如何通过IPFS分散网站的权限

2019-10-16 星际大陆 来源:区块链网络

xbsnX18UCMTAwmtpBC96k6vwTY0mbXtbY4tfc0jU.png

大约两年前,即2017年,我通过David Dias认识了IPFS 。这不是我在网站上第一次谈论IPFS,而是对它的简要描述:IPFS代表行星际文件系统,它是一种对等,内容寻址和分散式协议。

通过分散我的网站,我希望您可以从最近的来源中获取它。如果您通过HTTP访问此消息,则可能不是真正发生的事情(有点,稍后会解释)。但是,如果您已经知道IPFS并且正在使用IPFS Companion,则可能会发生变化,即您是通过分散式网络来加载它的。

首先,我使用一个名为Hugo的静态网站生成器,该网站的工作非常出色,并且将其道具提供给其创建者和维护者。但是,我们这里不是在谈论静态网站生成器,而是在谈论我的网站如何工作以及如何对您的网站做同样的事情。

将我的网站更新到InterPlanetary网络只需要两个简单的命令。实际上,我只需要将其推送到git存储库中,因为我已使用所需命令安装了CircleCI。无论如何,这是命令:

hugo --gc --minify npx ipfs-deploy public -p pinata -d cloudflare

简单吧?让我们分解一下,看看这里发生了什么。第一个命令是网站生成器,它输出到名为的目录public。没什么可说的。只是它包含我网站的所有文件。然后,我们奔跑ipfs-deploy,魔术发生了!

ipfs-deploy是由@agentofuser构建的工具,该工具执行以下操作:获取特定目录(在本例中为该目录)public,并将其添加到所需的所有固定服务中,并在定义的DNS提供程序上更新DNSLink。

等一下 固定服务?

因此,固定服务是运行IPFS守护程序(通常也是网关)的联机服务,它可以确保您的内容不会离开网络。现在,您告诉我:这是否会使分散化和不需要计算机使网站在线的观点无效?

好了,您可以运行本地IPFS守护程序- 应该做的!-并通过自己的计算机上的自己的节点添加内容。但是,如果没有其他人拥有您网站的内容,那么除非您的计算机24小时都连接到Internet,否则它将无法正常工作。

那DNSLink呢?

DNSLink是您域上的TXT记录,它指向某个IPFS哈希。假设example.com您的网站位于QmHash,网站内容的哈希为,那么您应该在TXT记录中_dnslink.example.com添加以下值:

dnslink=/ipfs/QmHash

DNSLink允许IPFS仅查看其域即可知道您网站的内容。当然,您不会给人们散列访问您的网站的麻烦。

现在让我们谈谈每种服务!

皮纳塔

Pinata是一项免费增值服务,可让您免费固定直到1 GB的数据。您需要在他们的网站上注册,然后才能获取您的api密钥和秘密api密钥。您需要使用这些值设置两个环境变量ipfs-deploy才能正常工作。

两个橘子的故事

我使用Cloudflare作为我的首选DNS提供程序。自今年以来,Cloudflare已运行自己的IPFS网关。您可以做的是:如果您的域是example.com,请将CNAME记录的根目录设置为cloudflare-ipfs.com。这意味着您的网站将由Cloudflare的网关提供服务。

Pinata和Cloudflare保持持久的连接,因此内容搜索肯定很快,因此在更新网站时不会出现任何问题。

嗯,我已经使用过Cloudflare,现在“ Always on HTTPS”不再起作用了……我做错了什么?

没事,你没做错事。现在,由于您的网站指向另一个Cloudflare网站(其IPFS网关),因此应用的规则cloudflare-ipfs.com将确定您网站的运行方式。而且,由于许多不同的原因,IPFS网关已禁用“始终使用HTTPS”。

但这将解决!Cloudflare正在开发一种名为Orange to Orange或O2O的解决方案,即使您的网站DNS指向由他们服务的另一个网站,该解决方案也将使您覆盖设置!

至于ipfs-deploy,您还需要设置一些环境变量来对其进行配置,以便能够在Cloudflare自动更新您的DNSLink。

然后,运行

ipfs-deploy -p pinata -d cloudflare

而且您的网站将固定到Pinata,并且Cloudflare的DNSLink将更新。

但这使网站去中心化有很多...

这是一个一次性的过程:您将其设置并保持运行。如前所述,每次我提交到master分支时,我都使用CircleCI来构建我的网站,固定它并更新DNSLink。您可以看一下设置。

真的是分散的吗?

是! DNS是分散式的,Cloudflare是分布式CDN。您的网站指向Cloudflare IPFS网关,这是由分布式Cloudflare网络提供服务的缓存IPFS网关。Cloudflare还需要从Pinata或您的计算机中获取内容,如果您不想将其固定到外部服务中!

您可以做些什么来改善?

首先安装IPFS Desktop,它会为您安装IPFS守护程序并使它一直运行,从而为您的计算机提供超强的功能。然后,安装IPFS Companion,该浏览器扩展将启动您的浏览器!如果这样做,下次打开我的网站(以及许多其他网站!)时,您将重定向到您自己的网关,该网关由您自己的IPFS节点提供,它将从发现内容的任何地方获取网站!

—-

编译者/作者:星际大陆

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...