DotNetCore部署(IIS)踩坑记
一.windows系统中Dotnet core runtime 安装后,无法启动次程序,因为计算机中丢失api-ms-win-crt-runtime-l1-1-0.dll的解决方法
错误现象如图
因为dotnet core runtime依赖vc++2015,如果系统未安装vc++2015则会报上面的错误
解决方案:先下载安装vc++2015再安装dotnet core runtime,
vc++2015下载地址:https://pan.baidu.com/s/1zbKeDhsTQ0qeJY0pykuFqg 密码:we06
二.vc++2015安装失败解决方案
更新操作系统最新补丁,打完补丁之后有时补丁会不完全 ,所以需要去官网获取补丁:
KB2919355
KB2999226
三.IIS部署ASP.Net Core 502.5错误和解决
在Win7的机器上部署ASP.Net Core程序,老是提示502.5错误。
已经安装了
- Microsoft Visual C++ 2015 Redistributable
- .NET Core Windows Server Hosting bundle
但程序就是跑不起来。
直接使用dotnet命令程序是可以正常运行的,说明环境运行时没问题。
dotnet MDM.dll
//运行正常
Windows日志
查看了Windows的错误日志0x80070002
,不知道是不是系统的问题,因为并不是在所有的机器上都会遇到。各种谷歌百度也没什么结果。
解决问题方式一
在不断尝试的过程中发现,使用自包含运行时发布,程序可正常运行。
解决问题方式二
0x80070002
的问题应该是找不到路径,但环境变量的PATH设置并没有问题,所以尝试以下方式解决。
首先查看一下dotnet core的安装目录,在命令行中输入where dotnet
打开程序的web.config,修改processPath="dotnet"为完整的路径processPath="C:\Program Files\dotnet\dotnet.exe"
以上两种方式都可以解决502.5的问题。