【发布时间】:2020-11-14 13:08:11
【问题描述】:
我创建了一个新的 Blazor PWA WebAssembly(最新版本默认模板)项目并将其部署在 Windows Server 中的 IIS 中以尝试 PWA。
安装了最后一个 .NET Core 托管包。
发布后,我运行Microsoft Docs中的脚本重命名dll文件:
dir .\_framework\_bin | rename-item -NewName { $_.name -replace ".dll\b",".bin" } ((Get-Content .\_framework\blazor.boot.json -Raw) -replace '.dll"','.bin"') | Set-Content .\_framework\blazor.boot.json
还有 serviceworker 重命名代码:
((Get-Content .\service-worker-assets.js -Raw) -replace '.dll"','.bin"') | Set-Content .\service-worker-assets.js
然后我删除了文档说的压缩文件:
wwwroot\service-worker-assets.js.br
wwwroot\service-worker-assets.js.gz
wwwroot\_framework\blazor.boot.json.br
wwwroot\_framework\blazor.boot.json.gz
但我在加载应用程序时仍然收到错误:
我在这里错过了什么?
我猜这与哈希和重命名有关,但在 Blazor 的 Github 问题中找不到任何解决方案。
【问题讨论】:
-
您是否重新压缩了更新后的 blazor.boot.json 文件?
-
@samwu 不,我如何重新压缩它?
-
您可以使用 PowerShell 或直接的 .NET 代码重新压缩它们:docs.microsoft.com/en-us/dotnet/api/… docs.microsoft.com/en-us/dotnet/api/… 您可能还可以使用网络上的一些实用程序。但是,gzip 和 brotli 文件不是必需的,在 IIS 中托管时也不会自动使用。您可以通过更新 web.config 来启用它们的使用:raw.githubusercontent.com/dotnet/AspNetCore.Docs/master/…
-
我最近遇到了同样的问题,对我有用的是简单地重命名位于
_bin下面的依赖文件夹中的语言 .dll。所以基本上在你的第一个命令中你必须添加-r然后它才能工作。dir .\_framework\_bin -r | ...
标签: iis progressive-web-apps blazor-webassembly