0%

《区块链》搭建去中心化网站

传统的搭建网站需要以下步骤:

  1. 购买域名
  2. 购买服务器
  3. 服务器备案
  4. 配置域名解析
  5. 网站部署(包括配置https)
  6. 配置CDN加速

这里教大家使用IPFS搭建去中心化网站,看一看有什么优势,有什么劣势

购买域名

传统的域名是DNS域名,而这里的域名则是ENS域名(E代表Ether)

可以去 https://app.ens.domains/ 注册ENS域名

注册完后,ENS域名同样具有域名服务器,默认会设置一个官方的域名服务器,当然也可以自己修改

同样,域名解析也有多种,有 content(只能配置一条)、address、text 3种

选择一个IPFS服务商注册

比如 https://play2.temporal.cloud/,注册一个账户,然后上传你的前端代码(react项目就是上传build后生成的build文件夹)

上传完成后,获得文件夹的hash值

注意:IPFS网络实际上不能保证上传的文件永久不会丢失,只要节点使坏,文件就访问不到了。真正想基本永久不丢失的话,可以选择Filecoin(基于IPFS,加上了激励与惩罚机制,保证节点不会使坏)

配置域名解析

在ENS域名服务器中配置一个content条目,指向 ipfs://{上面获得的hash},然后保存

部署后端

如果有后端的话,需要自己部署后端到服务器上,如果后端是纯智能合约,则无需部署

Https

不用管

查看效果

在域名后面加上 “.link” 即可打开网站

原理就是:

eth.link 域名是ENS官方拥有的一个DNS域名,ENS官方出售给我们的则是三级域名

比如我注册了 pefish.eth,则我拥有了域名 pefish.eth.link,当我打开 https://pefish.eth.link,会依次发生下面事情

  1. eth.link域名解析请求会被发送给ENS官方设置的域名服务器
  2. ENS官方设置的域名服务器上运行了一个插件,这个插件会根据网址然后利用以太坊接口访问智能合约,查询 pefish.eth 的域名解析条目,如果发现有content条目,则拿出hash,并加上IPFS网关组成新地址,然后解析到这个地址
  3. 网站就打开了

总结

相对传统的网站搭建,本文的搭建方式的优点有:

  1. 去中心化,只要选择对了IPFS服务商,上传的网站一般不会丢失
  2. IPFS服务商一般具有免费额度,无需购买服务器,节约成本
  3. 无需配置https
  4. 域名相对更便宜
  5. ENS域名服务器以及域名注册记录都是智能合约实现,具有区块链所有优点
  6. 天然CDN加速。IPFS网络越庞大,加速效果越好

缺点有:

  1. 域名多了个 .link 后缀,不好看
  2. 失去更多的控制权。比如网站的压力将被IPFS网关接收,如果IPFS网关扛不住,自己也没办法
  3. 网站更新不方便且花钱。每次更新要重新上传IPFS,获取不同的hash,然后更改ENS域名解析(花费以太坊网络费)
  4. 一旦ENS官方选择不续费 eth.link 域名跑路了,那么我们买的域名也没用了

大家可以基于以上的优缺点自由选择如何部署你的网站




微信关注我,及时接收最新技术文章