ASP.net Core IIS发布报502.5错误

解决ASP.NET Core IIS部署502.5错误
本文解决ASP.NET Core程序在IIS部署时出现的502.5错误,通过调整IIS应用线程池设置,将加载用户配置设为True,成功解决了Kestrel与IIS反向代理的冲突。

一、运行环境
服务器的系统是64位Windows Server 2012,ASP.net Core程序是一个MVC的小应用,选择的是独立发布,目标系统是Win81 x64。

二、错误原因
把发布的一堆东西拷到服务器之后打开IIS管理,确认已经安装了aspnetcore moudle,添加网站。由于是ASP.net Core,所以不需要托管代码,在应用程序池里面把托管程序选择为无托管代码。然后点击浏览,喜闻乐见地看到502.5错误页面。
在这里插入图片描述

三、解决方法
先求助万能的百度,参考了一下热心网友的文章,说只要改成独立发布就能解决,然而对我的问题并没有用。
看一波错误页面,大概知道是 ASP.net core里面的那个exe程序跑不起来。根据提示的错误检索步骤,查看一波系统日志,系统日志的查看一般在服务器管理工具里面一打开就能看到,或者右键 我的电脑->管理->事件查看器 那里查看,看到下图的两个错误。
在这里插入图片描述

这时大概猜到是代码里面用了Kestrel,然后Kestrel启动失败导致的。把IIS上的网站停用,然后直接打开发布的那个xxx.exe运行,尝试访问,发现可以访问。确定了代码没问题,那么可能是IIS的反向代理和代码里的Kestrel服务器有冲突,在网页的应用线程池里的高级设置把加载用户配置设置为True。我的问题得以解决。

参考文章
https://www.cnblogs.com/hoyu/archive/2018/03/06/8514243.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值