dotnet core publish 发布iis 错误模块 KERNELBASE.dll

dotnetcore程序发布到iis,浏览时502错误,在事件查看器中显示一下错误日志

错误应用程序名称: dotnet.exe,版本: 2.1.26814.2,时间戳: 0x5b7273f1
错误模块名称: KERNELBASE.dll,版本: 10.0.14393.2580,时间戳: 0x5bbdace7
异常代码: 0xe0434352
错误偏移量: 0x0000000000034048
错误进程 ID: 0x1994
错误应用程序启动时间: 0x01d4fb0f3906ab65
错误应用程序路径: C:\Program Files\dotnet\dotnet.exe
错误模块路径: C:\Windows\System32\KERNELBASE.dll
报告 ID: 1d25d605-d159-4f7f-a061-33603ad92a22
错误程序包全名: 
错误程序包相对应用程序 ID: 

IIS上的很多错误,其实都不是像报错信息的那样的问题,还是在代码或者部署阶段某些环境没有部署好,引起的问题。 

排查发现C:\Windows\System32\KERNELBASE.dll文件存在,且无异常。

问题是在发布的时候没有指定平台,所以发布文件夹中的依赖文件少,在本机可以运行,但是部署到生产服务器上就不行了。 

dotnet publish 命令不加参数的时候,默认发布当前环境下运行所需文件,不包括必须的文件依赖发布到目录下。

dotnet publish -c Release 

修改为一下命令,发布指定运行时的应用程序。 如果指定了运行时标识符,则 --self-contained默认为true, 即一下语句 --self-contained=true 可以省略

dotnet publish -c Release --self-contained=true -r=win10-x64

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值