当前位置: 首页 > news >正文

.NET 8.0 发布到 IIS

如何在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 应用程序。

相关文章:

  • 跟我学c++中级篇——面向切片编程
  • 单片机学习记录(一)
  • 深度学习笔记(二)——Tensorflow环境的安装
  • ZooKeeper 实战(五) Curator实现分布式锁
  • 网络命令ping和telnet
  • electron桌面应用开发——快速入门教程
  • MongoDB-数据库文档操作(2)
  • 【GCC】6 接收端实现:周期构造RTCP反馈包
  • debian12部署Gitea服务之二——部署git-lfs
  • 2024年软考考试时间确定了!请收好
  • 连接世界:2024 年 5G 及未来技术趋势
  • Vue3+ElementPlus实例_select选择器(不连续搜索)
  • MySQL、Oracle 常用SQL:建表、建视图、数据增删改查、常用condition
  • WPF Converter转换器
  • 如何将github copilot当gpt4用
  • 深入了解以太坊
  • 【Leetcode】101. 对称二叉树
  • @jsonView过滤属性
  • [iOS]Core Data浅析一 -- 启用Core Data
  • android 一些 utils
  • Codepen 每日精选(2018-3-25)
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • Django 博客开发教程 16 - 统计文章阅读量
  • ES6之路之模块详解
  • github指令
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • react-native 安卓真机环境搭建
  • React系列之 Redux 架构模式
  • vue-router的history模式发布配置
  • 笨办法学C 练习34:动态数组
  • 编写符合Python风格的对象
  • 大数据与云计算学习:数据分析(二)
  • 飞驰在Mesos的涡轮引擎上
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 前端面试题总结
  • 前端自动化解决方案
  • 设计模式(12)迭代器模式(讲解+应用)
  • 实现简单的正则表达式引擎
  • 使用Gradle第一次构建Java程序
  • 数据可视化之 Sankey 桑基图的实现
  • 微信开源mars源码分析1—上层samples分析
  • 我从编程教室毕业
  • 小程序开发之路(一)
  • 学习使用ExpressJS 4.0中的新Router
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • mysql面试题分组并合并列
  • ​configparser --- 配置文件解析器​
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • (Java)【深基9.例1】选举学生会
  • (k8s中)docker netty OOM问题记录
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (八十八)VFL语言初步 - 实现布局