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

浏览网站

发布成功!!!

相关推荐
北斗落凡尘33 分钟前
LangGraph 入门实战(11)--输出模式
后端·python·langchain
土星云SaturnCloud1 小时前
产线SOP动作级AI监管方案:土星云SE110S-WC8赋能合规识别、预警与效率分析
大数据·服务器·人工智能·ai·边缘计算
躺不平的理查德1 小时前
嵌入式 Linux 系统移植与 SD 卡量产镜像制作
linux·运维·服务器
demo007x1 小时前
Hermes-Agent 技术架构
前端·后端·agent
__zRainy__3 小时前
Node系列 · Node基础:net 模块
后端·node.js
Diligently_3 小时前
Anolis 系统更新与密码设置&磁盘扩容
java·后端·spring
kyson_4 小时前
大文件切片上传:从“能传”到“可靠”的 Vue 3 + Java 全栈实现
后端
张龙6874 小时前
uv 全面指南:比 pip 快 100 倍的 Python 包管理器,从安装到团队落地
后端·python