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是作为一个反向代理的角色,并不需要它来托管代码:

浏览网站

发布成功!!!

相关推荐
Ray661 分钟前
代理模式
后端
考虑考虑3 分钟前
Jpa中的枚举类型
spring boot·后端·spring
peter5275 分钟前
LangChain4j入门使用
后端
ArabySide12 分钟前
【ASP.NET Core】分布式场景下ASP.NET Core中JWT应用教程
分布式·后端·asp.net core
hui函数38 分钟前
Python全栈(基础篇)——Day06:后端内容(定义函数+调用函数+实战演示+每日一题)
后端·python
bcbnb1 小时前
Charles隐藏功能全攻略,10个高效技巧让你的抓包调试更专业
后端
用户4099322502121 小时前
PostgreSQL选Join策略有啥小九九?Nested Loop/Merge/Hash谁是它的菜?
后端·ai编程·trae
koddnty1 小时前
协程退出与智能指针
后端·架构
爱吃汽的小橘1 小时前
异步串口通信和逻辑分析仪
运维·服务器·网络·单片机·嵌入式硬件·fpga开发
用户6120414922131 小时前
C语言做的物联网设备数据采集模拟器
c语言·后端·敏捷开发