.net core webapi 部署iis_Asp.net core WebAPI部署踩坑记录

本文记录了在部署ASP.NET Core WebAPI到IIS时遇到的坑,包括500.19错误、权限问题、模块缺失等,并提供了相应的解决方案,如设置目录权限、安装Windows服务器托管、确保.NET Core SDK和Runtime版本匹配。
摘要由CSDN通过智能技术生成

 记录一下入坑asp.net Core的踩坑记录,避免以后走重复的坑”  

                                                                         好记性不如烂笔头



01

    经过笨比的深入探索后发现,好多小伙伴脱离IIS部署,毕竟 Docker配合Nginx的使用是现在时下的主流以及热门的话题吧。不过应该也有不少习惯部署在IIS上的,像我这种菜鸟不出意料的踩了好多坑,现记录分享一下。

参考官方资料 https://docs.microsoft.com/zh-cn/dotnet/core/deploying

02

创建项目并发布打包

  1. 项目的创建 可以直接略过,可以直接创建一个空的asp.net core Api项目,里面会有一个内置的API案例,可以正常访问的。

  2. 发布的步骤可以直接按照下面截图的形式去操作。085161863bc17569deb746a9c28ad4a2.png

  3. 然后就可以像以往部署Asp.net的webForm或者Mvc项目一样部署到IIS里面了,当然不出意外的话是会出现各种异常。

03

异常汇总以及解决方案

1、错误码---500.19


530023ce6e0f129bfd5aca6d90521b60.png

    原因 ①:项目的文件目录权限问题导致,

              ②: 如果还是报这个错误,应该就是 未安装 windows 服务器托管,打不开前                            项目的 模块 选项

    解决方案:一、如果是原因1导致,最直接的方法右键该目录 给予 everyOne 可修改或者全权                           限就可以了。二、需要安装项目匹配的 服务器托管( windows hosting )                                  链接地址 https://dotnet.microsoft.com/download/dotnet-core/3.1    

其他的错误码,有遇到过404异常,应该也是未安装AspNetCoreModuleV2导致的,如果你注意的话,会发现在打包的目录下会有exe可执行文件,也可以选择不寄宿在IIS里面发布,可以独立发布,监听的端口可以在配置文件里面配置。

也可以命令运行 发布服务,注意在该目录下运行或者指定到该位置下

dotnet xxx.dll

也是可以正常运行的,如果IIS部署失败,可以尝试这两种是否可行,如果可以的话,就排除了代码和项目的问题,问题点就集中在IIS的部署上面了。

    笨比分享一下我发布时遇到的问题,在本地电脑发布的时候有遇到权限的问题,授权后就可以了。因为本地电脑之前就安装了相关的模块。在发布到服务器(阿里的ecs)上时卡了好久才解决,因为服务器是windows Server2008R2 英文版的系统,以笨比的初中英语水准出错也是情理之中。首先需要安装或者配置IIS,可自行百度教程。 部署完项目后,一直访问不了接口,各种该装的都装了,还是不行。最后重新安装了一下asp.net core 运行时、捆绑运行程序包、.net Core SDK以及.net Core Runtime.注意版本和项目版本要统一才可以正常访问接口。至于两个运行时的区别暂时还不了解。反正是历经万险才部署成功,虽然还有很多疑问,好歹可以正常运行了。

    唉、要努力学习英语咯,不然有些坑是避免不了要踩的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值