企业网站维护报价,网页美工设计视频,在线免费网站模板,江西网站设计方案、
首先#xff0c;我们需要知道IPFS是什么#xff1f;
其实IPFS是一种协议#xff0c;全称为Inter-Planetary File System#xff0c;是一种点对点超媒体协议#xff0c;旨在取代旧的HTTP#xff0c;使网络更快#xff0c;更安全#xff0c;更开放。 我们平常都通过…、
首先我们需要知道IPFS是什么
其实IPFS是一种协议全称为Inter-Planetary File System是一种点对点超媒体协议旨在取代旧的HTTP使网络更快更安全更开放。 我们平常都通过HTTP协议去访问一个网站我们都知道在我们敲出一个网站后我们实际上通过这个网址找了了服务器的IP然后通过IP我们和服务器建立通信。而这种通信的稳定性它取决于对方服务是否可靠万一挂了我们肯定无法访问。同时还取决于我们的主干网络是不是通畅如果那个地方主干网的光纤一不小心被挖断了那可能导致某个服务就得挂一段时间了。
这也就是我们所说的HTTP趋于超中心化可能存在的隐患。而IPFS就是用来解决这些问题。IPFS让每一个人都可以成为一个服务节点一旦你上传一个文件到IPFS你的文件将会被存储在不同的节点然后你会得到一个由文件内容计算出的加密哈希值。当你通过该哈希值下载你的文件时IPFS会会使用一个分布式哈希表找到文件所在的节点取回文件并验证文件数据。这样就实现了一个分布式的服务节点既是你自己的节点挂了你的文件依然可以正常访问。
这篇文章我们一起通过IPFS搭建一个简单页面。
安装IPFS
首先我们需要安装IPFS。
在这里找到适合你的平台的安装文件下载。
然后解压安装。 1
2
3$ tar -zxvf go-ipfs_v0.4.18_darwin-amd64.tar.gz
$ cd go-ipfs
$ ./install.sh查看是否安装完成。 1
2
3
4$ ipfs --help
USAGE:ipfs - Global p2p merkle-dag filesystem.这样们就安装好了ipfs命令。之后我们初始化一下。 1
2
3
4
5
6
7$ ipfs init
initializing IPFS node at /Users/jin/.ipfs
generating 2048-bit RSA keypair...done
peer identity: QmQfPXYpcKWim9yQRhbZxxrgUve5VzHJD7h4miu2oQ6Ubj
to get started, enter:ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme初始化的过程中生成了一个公私钥对正是通过该公钥来标识我们的身份。
看看readme都写了些啥。 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27$ ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme
Hello and Welcome to IPFS!██╗██████╗ ███████╗███████╗
██║██╔══██╗██╔════╝██╔════╝
██║██████╔╝█████╗ ███████╗
██║██╔═══╝ ██╔══╝ ╚════██║
██║██║ ██║ ███████║
╚═╝╚═╝ ╚═╝ ╚══════╝If youre seeing this, you have successfully installed
IPFS and are now interfacing with the ipfs merkledag!-------------------------------------------------------
| Warning: |
| This is alpha software. Use at your own discretion! |
| Much is missing or lacking polish. There are bugs. |
| Not yet secure. Read the security notes for more. |-------------------------------------------------------Check out some of the other files in this directory:./about./help./quick-start -- usage examples./readme -- this file./security-notes这里有一些帮助文档你可以先了解一下。
如ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/quick-start就可以查看quick-start。
准备一个简单的网页
接下来我们准备一个简单的页面。
文件 ipfs_file/index.html1
2
3
4
5
6
7
8
9!DOCTYPE html
link relstylesheet typetext/css hrefstyles.css
htmlbodyh1Hello World/h1p 我的IPFS/pa hrefhttps://razeen.me/post/start-ipfs-gateway.html#toc_0 Back /a /body
/html文件 ipfs_file/styles.css1
2
3
4
5body {background-color: #ccc;text-align: center;margin-top: 88px;
}启动IPFS服务 1
2
3
4
5
6
7
8
9
10
11
12
13$ ipfs daemon
Initializing daemon...
Successfully raised file descriptor limit to 2048.
Swarm listening on /ip4/127.0.0.1/tcp/4001
Swarm listening on /ip4/192.168.3.16/tcp/4001
Swarm listening on /ip6/::1/tcp/4001
Swarm listening on /p2p-circuit/ipfs/QmQfPXYpcKWim9yQRhbZxxrgUve5VzHJD7h4miu2oQ6Ubj
Swarm announcing /ip4/127.0.0.1/tcp/4001
Swarm announcing /ip4/192.168.3.16/tcp/4001
Swarm announcing /ip6/::1/tcp/4001
API server listening on /ip4/127.0.0.1/tcp/5001
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080
Daemon is ready如果你查看了quick-start你应该知道我们可以通过浏览器来查看一些UI界面视频等。
如通过http://localhost:5001/webui,我们可以查看我们刚刚启动的这个IPFS的一些节点情况。
编辑
我们还可以看到我们连接了多少节点以及大概分布。
编辑
当然还可以查找文件等这里就不一一说了。
上传文件
然后我们可以通过add将文件上传。 1
2
3
4
5$ ipfs add -r ipfs_file
added QmYN1vzHWT4U61R6GnnJ2H3N76DpZ4JU4xa3r8paDfDdEB ipfs_file/index.html
added Qmea1q1nEPxCsB8y5so2ppNVuKy2kMtFCiBnngiK7A4PY3 ipfs_file/styles.css
added QmSwtxZ5NzJ4cLEm9SX1oeAwcBYevfvb6nhYweXYNSXnNC ipfs_file333 B / 333 B [ ] 100.00然后我们通过IPFS网关访问https://gateway.ipfs.io/ipfs/QmSwtxZ5NzJ4cLEm9SX1oeAwcBYevfvb6nhYweXYNSXnNC/ 就可以访问刚刚的文件了。
编辑
由于防火墙的关系这里需要用梯子才能访问到
Cloudflare IPFS gateway
最近发现Cloudflare也推出了ipfs网关而且我们可以将自己的域名解析到该地址通过TXT记录来关联你的IPFS文件。
访问
首先我们可以通过https://cloudflare-ipfs.com/ipfs/QmSwtxZ5NzJ4cLEm9SX1oeAwcBYevfvb6nhYweXYNSXnNC/ 访问刚刚上传的文件。
添加DNS记录
然后我么在我们的DNS服务商中添加两条记录如下。
我希望将ipfs.razeen.me指向该文件然后我需要添加如下记录
编辑
也就是将ipfs.razeen.me CNAME到cloudflare-ipfs.com; 添加_dnslink.ipfsTXT值your_ipfs_hash_here 如QmSwtxZ5NzJ4cLEm9SX1oeAwcBYevfvb6nhYweXYNSXnNC。
提交
然后在这里填上你的域名提交即可。
之后cloudflare会为你的域名申请一张证书并完成转发, 整个过程可能需要10分钟左右。
当你看到Certificate is live.提示域名配置就完成了。
访问一下我们可以看到。
编辑
到这里我们就完成该网页配置了。一个IPFS站点就搭建完成了。