ASP .NET Core API发布与部署IIS(以及遇到的坑和解决方法)


最近在写.Net Core的API,由于之前没接触过Core,所以自己的想法很简单,感觉和.Net都是差不多的东西,发布部署还是按.Net的那一套来,可谓是困难重重,走了不少弯路。

        也没什么漂亮的词语,也不是技术大牛,就是抱着学习技术的态度,随手写写这一套流程,以及遇到的问题跟解决方法。

        

一、安装服务器环境

        IIS  Path-->Control Panel\All Control Panel Items\Programs and Features

 

没细致研究,全装了~

 

二、发布API

1.选择File System,设置Target location.

 

2.配置文件,选择框架依赖,需要安装SDK,选择独立不需要安装SDK。。还有就是一定要安装托管模块(下载地址,下面有说明)

 

  我用的VS2017,设置好了发布就可以~

三、添加网站到IIS

1.添加WebSite,填写Site name和Physical path.

 

 

2.设置该网站的Application Pools, .NET CLR version设置为 No managed Code.

 

 

四、服务器环境搭建及问题解决

1.安装.NET Core SDK和AspNetCoreModule托管模块

ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行

 

 

链接:SDK 密码:g02o

链接:托管模块 密码:8mxu

上面的链接文件已删除。。。

 

使用 IIS 在 Windows 上托管 ASP.NET Core:

https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.1#install-the-net-core-hosting-bundle

下载.NET Core 3.1(里面有SDK和托管模块):

https://dotnet.microsoft.com/download/dotnet-core/3.1  

我下载的是3.1.9,IIS运行时支持(ASP.NET核心模块v2) 托管包,

SDK的话, 看着对应版本安装吧

下载托管模块

  1. 导航到 .NET Core 页面。
  2. 选择所需的 .NET Core 版本。
  3. 在“运行应用 - 运行时”列中,查找所需的 .NET Core 运行时版本的那一行。
  4. 使用“托管捆绑包”链接下载安装程序。

不出问题基本安装完后,基本可以访问了

2.错误502.5一般就是没装.NET Core SDK和AspNetCoreModule托管模块

 

 

3.另一个比较奇葩的错误

解决方法:看下你的发布文件夹里面是否缺少WebApi.xml,如缺少请手动复制到服务器指定路径下。

4.如果遇到其他问题请查看日志或者查看官方给出的解决方案(官方解决方案地址

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM