【问题标题】:IPFS static websites deployIPFS 静态网站部署
【发布时间】:2020-04-04 01:55:17
【问题描述】:

我正在尝试在由NuxtJSSapperJS 生成的IPFS 上部署静态网站。

在这两种情况下,我都遇到了同样的错误:

Failed to load resource: the server responded with a status of 404 (Not Found)

因为 HTML 中的链接看起来像这样:

<link href="client/main.850609924.css" rel="stylesheet">

当我访问任何index.html 时,所有静态都以http://127.0.0.1:8080/ 而不是http://127.0.0.1:8080/ipfs/&lt;hash&gt; 提示

我尝试在生成静态站点之前更改设置,但没有成功。

当我在NeltifyAWS 上部署相同的静态站点时,一切都按预期工作。

我做错了什么?

【问题讨论】:

    标签: javascript vue.js nuxt.js svelte ipfs


    【解决方案1】:

    我认为问题在于很多静态网站生成器都假设网站根目录位于 /

    当您从 IPFS path gateway 加载网站时,根目录位于 /ipfs/ 而不是 /,这就是生成的 HTML/JS 无法找到文件的原因。

    有两种处理方式:

    • 配置静态网站生成器以生成带有相对路径的 HTML(NuxtJS 的问题)
      • 这是首选方式:如果您的框架不支持相对路径,请提供上游修复,以便对其他人进行修复
    • 从 IPFS subdomain gateway 加载您的网站,其中 Origin root 位于 /

    【讨论】:

      【解决方案2】:

      您可以尝试使用 terminal.co 几次点击将静态站点部署到 IPFS 它构建目录并将其上传到 ipfs,返回一个散列,并将其映射到带有散列的 txt 记录的子域。之后添加的任何域都指向子域,并且 txt 记录会针对所有未来的构建进行更新

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-09-13
        • 1970-01-01
        • 1970-01-01
        • 2018-03-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-08-18
        相关资源
        最近更新 更多