gpt4 book ai didi

c# - 默认 Blazor PWA 项目无法托管到 IIS 中

转载 作者:行者123 更新时间:2023-12-05 03:50:43 40 4
gpt4 key购买 nike

我使用 Visual Studio 2019 创建了一个新的 Blazor 项目(看图片)

我检查了 https、ASP.NET Core 托管和渐进式 Web 应用程序

Default blazor webassembly app project

之后,visual studio 创建了客户端项目、服务器项目和共享类项目。我确保项目没有错误,所以我编译它并在 visual studio 上运行它。

之后我想将它托管到我的 IIS 中,所以我进入服务器项目,右键单击,发布并将所有内容发布到我的发布文件夹中。

一切顺利,现在我进入我的 IIS ,添加新站点,并选择之前生成的发布文件夹的路径(我在本次测试中使用了端口 80)。

我还向 Web 配置授予 IIS_IUSRS 权限。

现在,我在浏览器中输入 localhost:80,然后进入等待页面加载的无限循环,但它从未加载。

没有错误显示到浏览器中。

所以我进入我的 IIS 管理器并说 visual studio 默认生成的 Web 配置被认为是错误的。

我的 webconfig.xml :

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\Funzia.Server.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
</system.webServer>
</location>
</configuration>
<!--ProjectGuid: 4872489F-5CAD-4DF4-BAFC-9D401F53BF48-->

我已经安装了 ASP.NET 核心运行时包,还有 dotnet-hosting-2.2.2。

事实上,我可以轻松地托管服务器应用程序 blazor,零问题,但是当我尝试发布 Blazor WebAssembly 应用程序时,它无法正常工作。

其他有用信息:

模块没有丢失。

enter image description here

dotnet --info 的输出:

.NET Core SDK (che rispecchia un qualsiasi file global.json):
Version: 3.1.301
Commit: 7feb845744

Ambiente di runtime:
OS Name: Windows
OS Version: 10.0.18363
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\3.1.301\

Host (useful for support):
Version: 3.1.5
Commit: 65cd789777

.NET Core SDKs installed:
3.1.300 [C:\Program Files\dotnet\sdk]
3.1.301 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.18 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.18 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.18 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

我还尝试添加一个自动签名证书并尝试通过 https 访问,但我遇到了与使用 http 相同的结果。

更进一步,我还尝试通过控制台发布项目,我认为 visual studio 可能会创建损坏的 web 配置文件,但创建的文件是相同的。

我发现其他一些用户也遇到了这个问题,但我还没有找到任何解决方案。

有什么建议吗?

最佳答案

您可以尝试以下步骤在 iis 上发布 Blazor WebAssembly 应用程序。我测试它可以在我的电脑上正常工作。

要在 iis 中发布 blazor 应用程序,首先确保您安装了 iis 功能。 enter image description here

  • .NET Core 托管包
  • ASP.NET 核心运行时

根据您的版本下载并安装运行时和托管包。安装托管包后不要忘记重新启动机器。

现在查看位于屏幕左侧的“解决方案资源管理器”选项卡。右键单击解决方案的服务器项目,即 BlazorDDL.Server。点击发布。 enter image description here

您将看到一个新屏幕。在左侧菜单中,单击文件夹。选择要将 Blazor 应用程序发布到的文件夹。单击“发布”。如果没有错误,您的应用将发布成功。

enter image description here

接下来,您必须配置 IIS。 enter image description here

并且您必须配置应用程序池。您会在左侧面板中找到它。双击池 ankisite。将出现“编辑应用程序池”窗口。从 .NET CLR 版本下拉列表中,选择无托管代码选项。 enter image description here

关于c# - 默认 Blazor PWA 项目无法托管到 IIS 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63371014/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com