c# - 将 blazor 项目正确发布/部署到 github 页面

标签 c# web-deployment github-pages blazor

首先我会说我在这里的工作肯定比我的薪水高一点。我会尽力描述这个问题并使其最容易回答。

我在 Visual Studio 中创建了一个 Blazor 项目,它已连接到 GitHub 存储库 here在 gh-pages 分支中。阅读 Blazor 的托管和部署指南后 here ,我在 Visual Studio 中发布了项目,并将 /bin/Release/netstandard2.0/publish/ChargeLearning/dist 文件夹中的文件复制到存储库的根目录,从而生成具有此文件结构的存储库:

ChargeLearning
    ChargeLearning
    _content
    _framework
    css
    sample-data
    ChargeLearning.sln
    index.html

在这一点上,我认为我已经深陷不良实践之中。

无论如何,尝试加载 index.html对于 bootstrap 等 html header 中的大多数文件,控制台会导致 404 错误(正如 blazor 部署指南所警告的那样)。

所以我尽可能地按照那里的说明,尝试实现 this指南中链接的 gh-pages 的单页应用程序 (SPA) 修复。

我现在将 404.html 文件添加到 ChargeLearning 存储库,当我加载页面时它只显示一个 404 错误,用于 blazor.webassembly.js 文件。

然后我将来自 SPA 修复的重定向脚本添加到我的 willthamic.github.io repository当我打开 direct urlblazor.webassembly.js 文件似乎正确重定向,但 github 显示我的主页,我现在意识到它已被严重损坏,现在无法加载图像。

我觉得我在这里做错了很多事情,这使得很难立即隔离和解决一个问题。

如果您有关于如何正确部署这个的具体建议,或者关于如何更正确地做我想做的事情的小事情,我将不胜感激。

提前致谢。

最佳答案

blazor.webassembly.js 文件存储在以下划线 (_framework) 开头的目录中,github 的 jekyll 在部署网站时会忽略该目录。在将名为.nojekyll 的文件添加到存储库的根目录 之后,仍然出现404 错误,这让我困惑了很长时间。后来发现我需要更改另一个文件才能重建网站,最终解决了这个问题。

我仍然觉得我正在做很多可能不好的事情,但那是以后的事了。如果有人对此有任何建议,我将为此悬赏。

关于c# - 将 blazor 项目正确发布/部署到 github 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54260158/

相关文章:

javascript - 从 Controller 操作获取数据到 jquery 数据表

c# - 获取Enterprise Architect包节点的所有子节点

amazon-ec2 - 将 Rails 3.1 应用程序部署到 Amazon Ec2

java - 反射(reflect) Spring 应用程序在运行时配置中所做的更改,而无需重建它

javascript - 如何将另一个 html 文件添加到 github.io 页面中的现有 html 中?

c# - 使用 array.sort 对数组进行排序

c# - MediaElement 的 SetSource 使用继承自 IsolatedStorageFileStream 的自定义流

windows - 在 jenkins 重新部署 war 之前自动启动停止远程 tomcat(部署插件)

Jekyll - page.categories 打印类别,类别之间没有空格

git - 如何在 github 子目录中托管 Jekyll 博客?