导语
前面《使用.Net5尝鲜的一些小总结及Configuration.Json读取配置文件的使用》有说到,当时项目最后在服务器上发布时,因为操作系统是win2008r2的,发布后一直无法正常使用,折腾了两天才总算成功,这篇主要就说说在.net5的程序在win2008r2下发布的一些注意事项。
结论
# | 安装顺序 |
---|---|
1 | Win2008R2的系统必须要打SP1补丁 |
2 | 打完SP1补丁后还要打KB2533623补丁 |
3 | 安装Microsoft Visual C 2015 Redistributable |
4 | 安装dotnet-runtime-5.0.0-win-x64和dotnet-hosting-5.0.0-win.exe |
5 | 在IIS发布的程序的应用池设置无托管代码 |
相关的补丁包在文章最后网盘链接中下载。
填坑过程
微卡智享
自己的系统是Win2008R2,未打SP1补丁,但是最开始没有看这块,也正是因为这块花的时间也是够多的。
按正常流程来说,系统没问题的情况下我们首先要把.net的环境搭建,所以在微软官网直接下载了dotnet-runtime-5.0.0-win-x64和dotnet-hosting-5.0.0-win.exe。安装dotnet-hosting-5.0.0-win的时候结果报错了,不过感觉没怎么影响,然后就是正常的IIS发布,结果在访问的时候给我来了个
即然报错,说明我们上面的没安装成功是有影响的,网上找了找原因说安装.net core环境前置条件是要安装Microsoft Visual C 2015 Redistributable,那就直接又搜了这个后安装,得到的结果是一样的,安装失败。
这下直接让我有点头大了,不知道为啥,然后就是各种毫无头绪的乱搜找原因,为了确定就是没有安装上,也使用的命令来查看.net core是否安装成功,得到的结果
后来也是忘了在哪一贴子里看到的,说安装VC 那个要打KB2533623的补丁,然后又去下载这个,结果还是打不上,就这样一步步的反推最后发现,需要的系统是win2008R2 sp1,看了一下自己的系统,还真不是SP1,最浪费时间的地方开始了,首先开启windows更新,结果什么也搜索不到,无法更新,那就手动下载找SP1的补丁,微软的官方已经没有了,然后各种到处找,最终花了半天的时间才找到这么一个SP1的升级补丁。
找到最源头的东西后,下面就简单了,照着文章开始的顺序一步一步地搭建,最终程序可以正常使用了。
几个重点
IIS配置的应用程序池中要设置无托管代码
程序发布时我将部署模式改为了独立,主要原因是用框架依赖发布后的程序文件夹下的文件太多了,个人不喜欢。
采用独立后发布出来的里面文件就少了很多,只有一个exe的程序比较大。
直接运行刚才的EXE我们的服务也就开启了,上面的控制台就是Quartz启动后直接通过SqlSugar查询数据库的脚本。
Win2008R2搭建.net5环境相关安装
链接:https://pan.baidu.com/s/1omCpaQ1iksGfgnnyLOeFpg
提取码:1jvk
完