IIS上部署.netcore WebApi项目及swagger

.netcore项目一般是直接双击exe文件,运行服务,今天有个需求,需要把.netcore项目运行在IIS上,遇到了一个小坑,在这里记录一下。

安装IIS,怎么部署站点,这些过于简单就不细说了,不知道的可以百度一下。

概述

与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行,IIS则是作为反向代理的角色转发请求到Kestrel不同端口的ASP.NET Core程序中,随后就将接收到的请求推送至中间件管道中去,处理完你的请求和相关业务逻辑之后再将HTTP响应数据重新回写到IIS中,最终转达到不同的客户端(浏览器,APP,客户端等)。而配置文件和过程都会由些许调整,中间最重要的角色便是AspNetCoreModule,它是其中一个的IIS模块,请求进入到IIS之后便立即由它转发,并迅速重定向到ASP.NET Core项目中,所以这时候我们无需设置应用程序池来托管我们的代码,它只负责转发请求而已。

运行环境安装

部署asp.net core web api项目需要安装环境,IIS默认是不支持的,支持环境需要安装net core运行时: dotnet-hosting-3.1.32-win.exe,原因就是前面概述中讲的,.net core项目不是由iis工作进程(w3wp.exe)托管,需要先下载dotnet-hosting-3.1.32-win.exe

下载地址:下载 .NET Core 3.1

总之下载的就是这个,因为我的项目框架就是.net3.1,所以下的就是这个,如果你是.net6或7那就要对应的,总之是与你的项目框架是什么版本有关,要对应起来。

然后点击运行安装,然后在IIS工具可以看到

AspNetCoreModuleV2必须要。模块中存在就说明环境已经安装好了,没有的话多重启几下IIS 或者重新再装一次。

应用程序池选择无托管代码,集成

到这里本次遇到的坑要来了,如果你的swagger在本地运行正常,程序考过来放到站点中,运行是没问题的,第一次部署要先发布,把发布后的文件拷到站点下可正常预览,我把debug下的文件考过来,运行一直报错,提示404,当时想着测试环境,发布还要浪费时间,直接把debug考过去算了。。。第一次发布之后,后面有修改,把debug的dll考过去时没问题的。

相关推荐

  1. 偌依 项目部署线步骤

    2024-03-16 01:14:02       93 阅读
  2. Swagger 简单

    2024-03-16 01:14:02       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-16 01:14:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-16 01:14:02       101 阅读
  3. 在Django里面运行非项目文件

    2024-03-16 01:14:02       82 阅读
  4. Python语言-面向对象

    2024-03-16 01:14:02       91 阅读

热门阅读

  1. AI辅助信息技术发展

    2024-03-16 01:14:02       38 阅读
  2. C++的线程介绍

    2024-03-16 01:14:02       44 阅读
  3. 【Python3】观察者模式

    2024-03-16 01:14:02       46 阅读
  4. css页面布局

    2024-03-16 01:14:02       45 阅读
  5. DNS 技巧与窍门

    2024-03-16 01:14:02       41 阅读
  6. Kubernetes部署与卸载

    2024-03-16 01:14:02       46 阅读
  7. msql检索包含中文的记录

    2024-03-16 01:14:02       42 阅读
  8. C++中的引用

    2024-03-16 01:14:02       46 阅读
  9. element ui el-select组件添加选项下拉加载

    2024-03-16 01:14:02       40 阅读
  10. 蓝桥杯刷题(七)

    2024-03-16 01:14:02       41 阅读
  11. Spring-1

    Spring-1

    2024-03-16 01:14:02      41 阅读
  12. 2024年3月质量管理体系基础考试真题

    2024-03-16 01:14:02       41 阅读
  13. 【C++】每日一题 101 对称二叉树

    2024-03-16 01:14:02       39 阅读
  14. 【数组】-Lc53-最大子序和(动态规划)

    2024-03-16 01:14:02       46 阅读