适当地将blazor项目发布/部署到github页面

Wil*_*mic 3 c# web-deployment github-pages blazor

首先,我要说我肯定比我的薪水高一点。我将尽力描述这个问题,并使其最容易回答。

我做了在Visual Studio中Blazor项目,这是连接到GitHub的仓库在这里的GH-页面分支。阅读Blazor的托管和部署指南后在这里,我发表在Visual Studio中的项目和在复制的文件/bin/Release/netstandard2.0/publish/ChargeLearning/dist夹,导致与此文件结构的仓库存储库的根目录:

ChargeLearning
    ChargeLearning
    _content
    _framework
    css
    sample-data
    ChargeLearning.sln
    index.html
Run Code Online (Sandbox Code Playgroud)

在这一点上,我认为不好的做法已经使我深陷其中。

无论如何,对于html标头中的大多数文件(如引导程序),尝试加载index.html都会在控制台中导致404错误(如blazor部署指南所警告)。

因此,我尽可能地按照说明进行操作,尝试为指南中链接的gh页实施单页应用(SPA)修复程序。

我现在在加载页面时将404.html文件添加到ChargeLearning存储库中,该blazor.webassembly.js文件仅显示一个404错误。

然后,我将SPA修复程序中的重定向脚本添加到我的willthamic.github.io 存储库中,当我打开指向文件的直接url时,blazor.webassembly.js似乎可以正确地重定向,但是github显示了我的主页,我现在意识到它已经被严重破坏了,现在图像无法加载。

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

如果您对如何正确部署此工具有具体建议,或者在如何做一些我想尝试做的事情上有一些小建议,我将不胜感激。

提前致谢。

Wil*_*mic 5

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

我仍然觉得自己在做很多可能不好的事情,但这又是一天。如果有人对此有任何建议,我将给予赏金。

  • 如果你想同时使用 jekyll 和 blazor,可以在 `_config.yml` 文件中添加 ```include: - "_framework" - "_bin"``` 。这将告诉 jekyll 在发布时包含这些文件。 (2认同)