.NET 8.0 发布到 IIS

发布时间:2024年01月16日

如何在IIS(Internet信息服务)上发布ASP.NET Core 8?

在本文中,我假设您的 Windows Server IIS 上已经有一个应用程序池。

按照步骤了解在 IIS 环境下发布 ASP.NET Core 8 应用程序的技巧。

您需要设置代码以支持 IIS 并将项目配置为在目标池的体系结构上运行。

要检查您的池是否在 x86 上运行,请验证inetmgr控制台,验证高级设置...并检查启用 32 位应用程序是否设置为true

让我们执行发布步骤

步骤 1.启动新的 ASP.NET Core MVC。

dotnet new mvc -n MyTestApp

步骤 2.?如果编译应用程序并开始发布,您将面临这些默认参数。

步骤3.?我尝试发布并收到错误503。这是正常的,这就是我们将修复的问题。

步骤 4.?因此,我将此代码添加到 Program.cs 以启用 IIS 服务器选项。

builder.Services.Configure<IISServerOptions>(options =>
{
? ? options.AutomaticAuthentication = false;
});

步骤 5.打开解决方案 右键-配置管理器,然后选择新建...。来自主动解决方案平台。

步骤 6.?选择您的架构池。它应该与 IIS 上的应用程序池相同(32 位为 x86)。

步骤7.?它看起来像这样。

步骤 8.?返回到发布配置,您需要对此进行更改。

第9步。?但是如果您尝试发布,您将收到相同的错误。

步骤 10.?要解决此问题,您需要将应用程序配置为在 Windows 下运行,添加 <TargetFramework>net8.0?-windows?</TargetFramework>,卸载项目并进行编辑。

<Project Sdk="Microsoft.NET.Sdk.Web">

? <PropertyGroup>
? ? <TargetFramework>net8.0-windows</TargetFramework>
? ? <Nullable>enable</Nullable>
? ? <ImplicitUsings>enable</ImplicitUsings>
? ? <Platforms>AnyCPU;x86</Platforms>
? </PropertyGroup>

</Project>

步骤 11.?现在,如果您打开应用程序的“属性”,您将看到它已启用目标操作系统版本 7.0。

步骤 12.?现在,您需要选择目标框架:使用“?net8.0-windows?”:

步骤 13.?在发布dotnet之前,将文件app_offline.htm复制到目标 IIS 安装文件夹。这会关闭该网站,因此如果您尝试使用该网站,则会显示此消息:

大致翻译:

我们很快就会回来!

很抱歉给您带来不便,但我们目前正在进行一些维护。我们很快就会恢复在线!

步骤 13.1。?额外源代码,微软默认源代码。如果文件名?app_offline.htm?向 dotnet 指示应终止执行,它会自动重定向到该文件。您可以根据需要自定义此文件。

<!doctype html>
<title>Site Maintenance</title>
<style>
? body { text-align: center; padding: 150px; }
? h1 { font-size: 50px; }
? body { font: 20px Helvetica, sans-serif; color: #333; }
? article { display: block; text-align: left; width: 650px; margin: 0 auto; }
? a { color: #dc8100; text-decoration: none; }
? a:hover { color: #333; text-decoration: none; }
</style>

<article>
? ? <h1>We&rsquo;ll be back soon!</h1>
? ? <div>
? ? ? ? <p>Sorry for the inconvenience but we&rsquo;re performing some maintenance at the moment. we&rsquo;ll be back online shortly!</p>
? ? </div>
</article>

步骤 14.?复制文件,然后删除?app_offline.htm文件以运行应用程序。这就是结果。

结论

有几个步骤,但必须遵循这些步骤才能成功发布 ASP.NET Core 8 应用程序。

文章来源:https://blog.csdn.net/hefeng_aspnet/article/details/135616855
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。