编译:华科闪云

原文链接:https://docs.ipfs.io/how-to/host-single-page-site/#create-your-site

对于希望了解IPFS的用户而言,最好的办法就是创建一个最简单的网站,它仅仅只包含一个网页,然后把这个网站托管在IPFS上,下面所有的操作都在Linux操作系统中,大家可以选择常用的Ubuntu系统。

假设您在目录中有一个静态网站mysite。

为了将其发布为站点,请安装IPFS并确保IPFS守护程序正在运行:

然后在目录中添加您的网站:

文件夹名称旁边的最后一个哈希mysite/是要记住的哈希,请立即调用$SITE_CID。

然后您可以通过http://localhost:8080/ipfs/$SITE_CID在浏览器中打开或使用wget或curl从命令行中进行本地测试。

要从另一个ipfs节点查看它,可以在浏览器http://gateway.ipfs.io/ipfs/$SITE_CID中尝试。您可以在添加了站点文件的网络内部或外部的另一台设备上的浏览器中进行。

这些哈希值很难记住。让我们看一些摆脱它们的方法。

编辑您的DNS记录

假设您拥有域名your.domain并且可以访问注册商的控制面板来管理它的DNS条目。

您可以创建一个DNS TXT记录(DNSLink),使用键your.domain.和上一节中的值dnslink=/ipfs/$SITE_CIDwhere $SITE_CID。

创建该记录并传播之后,您应该可以找到它。

现在,您可以访问您的网站http://localhost:8080/ipns/your.domain

您也可以在网关上尝试此操作:http://gateway.ipfs.io/ipns/your.domain

有关DNSLink的其他问题请访问DNSLink网站以获取教程,示例和常见问题解答。

使用IPNS

每次更改网站时,都将不得不重新发布它,使用新值更新DNS TXT记录,$SITE_CID然后等待其传播。

您可以使用IPNS(星际命名系统)来解决该限制。

您可能已经注意到,/ipns/而不是上一部分/ipfs/中的更新链接。

IPNS用于IPFS网络中的可变内容。它相对易于使用,可以让您更改网站而无需每次都更新dns记录。

要为您的内容启用IPNS,请运行以下命令,其中$SITE_CID第一步中的哈希值是。

您将需要记下并保存该值以$PEER_ID用于后续步骤。

加载网址http://localhost:8080/ipns/$PEER_ID并在http://gateway.ipfs.io/ipns/$PEER_ID确认此步骤。

返回到注册商的控制面板,使用your.domainto 键更改DNS TXT记录,dnslink=/ipns/$PEER_ID,等待该记录传播,然后尝试使用URL

http://localhost:8080/ipns/your.domain

和http://gateway.ipfs.io/ipns/your.domain。

注意:使用IPNS更新网站时,在传播更新时,可能会从两个不同的已解决的哈希加载资产。在更新完全传播之前,这可能会导致URL过期或资产丢失。

将您的域指向IPFS

您现在在ipfs / ipns上拥有一个网站,但是您的访问者无法通过访问该网站:http://your.domain。

我们所能做的就是请求http://your.domain由IPFS网关守护程序解决。

返回到您的注册商的控制面板,并添加一个A记录,其键为

your.domainipfs,守护程序的IP地址和键值,该守护程序在端口80上侦听HTTP请求(例如gateway.ipfs.io)。如果您不知道计划使用的守护程序的IP地址,则可以使用以下命令找到它:

  1. 记下返回的IP地址。

  2. 为每个IPv4地址创建一个A记录(例如209.94.90.1ipfs.io)。

  3. 为每个IPv6地址创建AAAA记录(例如,2602:fea2:2::1用于ipfs.io)。

注意:ipfs.io网关IP地址不会更改,因此您可以设置它们或忘记它们。如果您在不控制IP地址的情况下使用自定义网关,那么它们可能会更改,则可能需要定期重新检查它们并更新DNS记录(如果存在)。

访客的浏览器将发送your.domain其请求的Host标头。ipfs网关将识别并your.domain查找您所在域的DNS TXT的值,然后在其中提供文件

/ipns/your.domain/。

如果将your.domainA和AAAA记录指向IP地址gateway.ipfs.io,然后等待DNS传播,那么任何人都应该可以访问ipfs托管的站点,而无需进行任何其他配置http://your.domain。

使用CNAME

您还可以使用CNAME记录来指向网关的DNS记录。这样,网关的IP地址将自动更新。

但是,您需要将TXT记录的密钥从your.domain更改为_dnslink.your.domain。

因此,通过创建CNAME your.domain到gateway.ipfs.io并添加

_dnslink.your.domain记录与dnslink=/ipns/您可以承载网关的IP地址。

无法访问此网站localhost 拒绝了我们的连接请求_官方教程丨如何在IPFS上创建托管个人网站?...相关推荐

  1. vscode调试html页面status200无法访问此网站 localhost 拒绝了我们的连接请求

    vscode使用debugger for chrome调试web项目和报错解决办法 vscode调试html页面status200无法访问此网站 localhost 拒绝了我们的连接请求 vscode ...

  2. 无法访问此网站 localhost 拒绝了我们的连接请求。

    使用linux下的ssh或者windows下的xshell远程了服务器之后, 使用jupyter notebook命令想在本地浏览器打开服务器的jupyter, 复制login的链接如:http:// ...

  3. 无法访问此网站 localhost 拒绝了我们的连接请求。_网站经常被DDOS攻击会造成什么影响...

    网站经常被DDOS攻击了会造成什么影响.其中最大的影响就是造成网站无法访问.正常用户无法访问网站,造成客户流失.还有就会影响网站排名,有些网站是请了花钱做了专业的排名优化的,因为常时间的被ddos攻击 ...

  4. 无法访问此网站 localhost 拒绝了我们的连接请求

    解决方法 进入 SQL Server 管理环境中 展开 数据库 – BOOK 1 右击 BOOK – 属性 ,弹出BOOK的数据库属性画面 2 在选项页下面,点选 权限 3 在用户或角色列表中,点选 ...

  5. 本地服务:无法访问此网站 localhost 拒绝了我们的连接请求。ERR_CONNECTION_REFUSED

    问题: 可能的解法:打开startup.bat 后确定tomcat启动成功后不要关闭窗口,缩小至最小化即可 不要关闭这个页面,因为后面输入http://localhost:8080        需要 ...

  6. 本地服务:无法访问此网站 localhost 拒绝了我们的连接请求。ERR_CONNECTION_REFUSED

    错误原因,服务没有开启. 解决办法: 快捷键:win+R 再输入:services.msc 然后选择你要启动的服务,右击启动就可以了.

  7. 无法访问此网站 localhost 拒绝了我们的连接请求。

    开机之后打开IDEA,运行了一个与MySQL.Tomcat连接着的项目,弹出的界面却无法打开,呈现的是下图这种样子,且发现地址栏不正确 查看MySQL,发现MySQL运转正常 打开IDEA,发现以往是 ...

  8. 无法访问此网站localhost 拒绝了我们的连接请求。请试试以下办法:检查网络连接检查代理服务器和防火墙ERR_CONNECTION_REFUSED

    1.端口弄错 2.项目没起来.我是昨天发布打了个包,忘了清除了,所以用的线上SDK环境,本地当然起不来报错

  9. 【异常解决】vue项目localhost:8080无法访问此网站或者无法访问此页面,localhost拒绝了我们的连接请求

    localhost拒绝了我们的连接请求的解决方案 一.背景描述 二.问题原因 三.解决方案 方案一:重启前端和后端服务 方案二:关闭被占用的端口程序,或者换新的其他端口重启服务 方案三:启动Windo ...

最新文章

  1. 从ftp获取文件并生成压缩包
  2. 006_Spring Data JPA基于方法名称命名规则查询
  3. linux c语言文件拷贝_linux - 远程拷贝文件之scp
  4. 达梦数据库导入oracle数据_达梦数据库和oracle数据的一些区别
  5. (三) UART 串口通讯
  6. server取出多个最小值 sql_sql语句,需要取出多个字段列中的最大值和最小值
  7. 2018年最新北风网人工智能视频教程(完整版)
  8. PowerBI Report Server借助Wap与ADFS实现集成一
  9. python相关的证书_有哪些含金量较高的Python证书?
  10. 能连蓝牙键盘吗_300多的小键盘,颜值很能打,GANSS ALT71蓝牙双模机械键盘很香...
  11. 分布式定时任务框架Uncode-Schedule技术介绍
  12. Jboot整合Swagger
  13. Reason Studios Reason 12 v12.2.5 WiN 音乐制作软件和机架插件
  14. 基于ffmpeg的GIF制作工具
  15. 利用报废主板制作SPD刷内存编程器座子
  16. 在c语言中int i k d,c语言int *pInt=(int *)d; 什么意思?
  17. Javascript:谈谈JS的全局变量跟局部变量(转zyz511919766)
  18. 强化学习 Reinforcement Learning(三)——是时候用 PARL 框架玩会儿 DOOM 了!!!(下)
  19. 【闲趣】你的父母有哪些神操作?
  20. 360手机官方刷机教程(N6系列+N7系列通用)

热门文章

  1. 2020年数学与计算机科学奖获得者,2020 数学与计算机科学奖 获奖人 —— 彭实戈 - 未来科学大奖...
  2. php session修改时间,PHP如何修改SESSION有效时间?
  3. java在图片下方写文字_Java画图给图片底部添加文字标题
  4. sql去除空值_SQL汇总分析
  5. 2021.12.16自制齿条
  6. oracle开发项目流程,如何开发ORACLE存储过程
  7. poj3253 优先队列
  8. centos安装java的jdk
  9. 软件测试第四周作业WordCount优化
  10. Python3爬虫知识点总结