首先刚接触.net core不久,在本地也是简单写点测试程序,没遇到过什么问题,感受还行,最近朋友搞了个asp.net core2.1的程序,让我给他服务器配置一下,我想这都跨平台了有什么难的吗?拿来我先在本地配置下试试,我用的是win10,本身装了vs2019,能够说环境的坑排除了很多,接着网上搜了下,在IIS里配置.net core的教程,照着上面的作很快就配置好,主要就三点:windows
1、下载安装 dotnet-hosting-2.1.22-win.exe ,安装后IIS > 模块 中会出现AspNetCoreModule,这个东西是.net core能在IIS运行的前提api
2.1以前的是AspNetCoreModule服务器
2.2以后的是AspNetCoreModuleV2架构
微软资料:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.1#install-the-net-core-hosting-bundleasp.net
各版本.net core下载地址:https://dotnet.microsoft.com/download/dotnet-core测试
2、下载安装SDK和rumtime包:网站
dotnet-sdk-2.1.810-win-x64.exe.net
aspnetcore-runtime-2.1.22-win-x64.exe线程
3、IIS线程池配置:server
.net clr版本设置为:无托管代码
这三步搞完,浏览运行起来了,心情大好,看起来也没什么难的嘛,感受比以前的.net framework还方便啊,不愧是最新的跨平台架构,接着搞正式的服务器了!然而,高兴的太早了,噩梦刚刚开始!
正式的服务器是windows server 2012 R2,先按照上面的三点搞完以后,兴冲冲的打开浏览,what?竟然报错:HTTP Error 502.5 - Process Failure
先点开他给出的连接,看了感受没啥用啊,也许是我不会找;遇事不决问搜索,继续搜索,网友给出的是确保安装了如下三点
后面两个都装了,那就看看第一个Microsoft Visual C++ 2015 Redistributable是个什么鬼吧
下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=53840
下载完后安装,开始挺顺利,到结尾的时候一直卡在 正在处理window81—×64,
而后我点开控制面板 > 程序看到Microsoft Visual C++ 2015 Redistributable已经有了,我就把一直卡的这个窗口关了,而后浏览网站程序,仍是502.5错误,一脸懵逼!
我想着多是我心急关早了,没装好,但明明安装程序列表已经有了啊,不甘心搜索了下“正在处理window81—×64”
我擦,还真有问题,看了相关资料,须要安装KB2999226补丁
下载地址:https://support.microsoft.com/en-us/help/2999226/update-for-universal-c-runtime-in-windows
下载好补丁后,打开,提示“只容许运行一个wusa.exe实例”,又是什么鬼啊!啊!
搜索!解决方法:打开任务管理器,找到windows update进程,关闭它!
接着装补丁!打开,程序自动搜索了老半天啊,提示“此更新不适用于你的计算机”!!!二脸懵逼!!!下的补丁明明是对应系统版本的!有点抓狂!有点不想搞了!
想着看看.net core到底装好了没,别是没装好!打开cmd,输入dotnet,敲回车,提示“api-ms-win-crt-runtime-l1-1-0.dll 丢失”!三脸懵逼啊!!!又是什么鬼!
继续搜索,发现仍是Microsoft Visual C++ 2015 Redistributable没有装好!仍是须要装KB2999226补丁!
可是这个补丁刚才装不上啊!蓝瘦啊!捋捋思路,是否是这个补丁装以前还要装其余的东西?赶忙看看刚才下载的页面,确实有!须要先安装KB2919355补丁!
哪就接着下补丁!下载地址:https://support.microsoft.com/en-us/help/2919355/windows-rt-8-1-windows-8-1-windows-server-2012-r2-update-april-2014
点开一看,我滴个乖乖!690M!好嘛!搞搞搞!下载及安装将近三个小时!
安装完后重启,重启以后,远程链接,帐号密码输进去,回车,没问题,但怎么就是出不来远程画面呢,几秒种后远程链接直接就没了!此时个人心里居然毫无波澜!!!
我想多是系统在开机前更新吧!已经深夜十一点多了!想一想睡觉吧!明天再搞!若是明天还进不去,那八成是系统打补丁打卒了,哈哈哈!
次日上午十点,心平气和的打开远程链接,输入帐号密码,回车,几秒后,呦!进来了!没问题!看起来猜的没错!
接着装补丁KB2999226,好家伙!一次成功!而后再装Microsoft Visual C++ 2015 Redistributable,玩美无阻!打开cmd,输入dotnet,回车,ok没问题!
而后打开网站网址,内心默默祈祷...两秒后,网站画面顺利出现!
这次,windows server 2012 R2服务器IIS配置.net core,采坑结束!
话说微软本身的服务器系统怎么配置个.net core这么难呢?!坑多的要命啊!