asp.net core项目发布到 iis上

我们都知道与传统asp.net 项目比较,ASP.NET Core则完全不同,它并不是运行在IIS的工作进程中,而是独立运行的。它运行于控制台应用程序之中,控制台中则运行了Kestrel Web服务器组件。Kestrel作为一款.NET Web服务器的实现,它在吞吐量性能方面做了很多工作。它可以快速将来自网络的请求接入到应用程序中,但是它仅仅是一个最基本的Web服务器。它没有类似IIS的Web管理服务,也没有IIS那么多的功能。

ASP.NET Core程序独立运行在控制台应用程序中,并通过dotnet运行时命令调用。它并没有被加载到IIS工作进程中,但是IIS却加载了名为AspNetCoreModule的本地Module,这个Module用于执行外部的控制台程序。AspNetCoreModule是作为ASP.NET Core Server Hosting Bundle的一部分被安装在服务器上的。

安装 .NET Core 托管捆绑包

在托管系统上安装 .NET Core 托管捆绑包。 捆绑包可安装 .NET Core 运行时、.NET Core 库和 ASP.NET Core 模块。 该模块允许 ASP.NET Core 应用在 IIS 后面运行。

使用以下链接下载安装程序:

当前 .NET Core 托管捆绑包安装程序(直接下载)

  1. 在 IIS 服务器上运行安装程序。

  2. 重启服务器或在命令行界面中执行 net stop was /y,接着执行 net start w3svc

安装好了后,如果你在IIS上模块里面看到AspNetCoreModule,表示安装成功:

在IIS上绑定添加网站

添加一个网站,设置一下名称,并将路径指向你刚才发布的文件夹,然后启动网站即可

设置应用程序池的.NET CLR版本为"无托管代码",因为刚才也说了,IIS是作为一个反向代理的角色,并不需要它来托管代码:

浏览网站

发布成功!!!

相关推荐
itjinyin18 小时前
ShardingSphere-jdbc 5.5.0 + spring boot 基础配置 - 实战篇
java·spring boot·后端
Victor35619 小时前
MongoDB(91)如何在MongoDB中使用TTL索引?
后端
老王以为19 小时前
前端重生之 - 前端视角下的 Python
前端·后端·python
Victor35619 小时前
MongoDB(92)什么是变更流(Change Streams)?
后端
奇妙之二进制19 小时前
zmq源码分析之own_t
服务器·网络
云边有个稻草人19 小时前
Docker部署KingbaseES数据库操作指南
后端
mounter62519 小时前
深度解析:Linux 内核为何要移除“直接映射” (Direct Map)?
linux·运维·服务器·security·linux kernel·direct mem map
NineData19 小时前
NineData亮相香港国际创科展InnoEX 2026,以AI加速布局全球市场
运维·后端
码农BookSea19 小时前
Hermes 深度解析:自我进化的 AI 智能体新范式
后端·ai编程
老马952719 小时前
opencode4-在已有项目中增加修改功能
java·后端·ai编程