20190705-记IIS发布.NET CORE框架系统之所遇
新手在IIS上发布.NET CORE框架的系统之注意事项
序:本篇随笔是我的处子笔,只想记录自己觉得在系统发布过程中比较重要的步骤,一来,忝作自己的学习笔记,以备不时之需,二来,也希望可以帮助有需要的同仁。诚然,了解的同学会
觉得内容太过简单,不过技术这门功课,是会的人觉得简单,不会的人觉得万难,因此就认认真真的记录下来罢。
由于在IIS上发布.NET CORE框架的系统和发布一般的ASP.NET WEB应用程序的步骤大致相同,所以本文就不再一步一步赘述,只拣重要的操作说明,下面按照开发阶段和IIS部署阶段来详细描述,
本文的.NET CORE版本为2.2。
在正式开启之前,先贴一张错误图片:

(一)开发阶段
1、启用 IISIntegration 组件
在主程序中添加微软提供的组件:Microsoft.AspNetCore.Server.IISIntegration,若是使用Nuget,可直接搜索“IISIntegration”即可找到,接着在系统入口方法(Program.cs)中启动该组件,具体
方法为调用WebHostBuilder的UseIISIntegration方法。
(二)IIS部署阶段
2、安装AspNetCoreModule模块
下载模块安装包( https://dotnet.microsoft.com/download/dotnet-core/2.2),该安装包包含了Runtime。安装后在控制面板中会新增3项:

在IIS发布的网站对应模块页面中可以看到新增了2项:

如果你觉得V2看着比较别扭,可以直接删除,不影响程序的正常发布(本地IIS亲测)。刚开始我以为是因为我安装了两个版本的模块,所以会有V2,然后各种卸了装,装了卸,后来换了一台电
脑直接安装2.2版本才发现,安装了2.2就会显示两个模块。
3、应用程序池的配置
这里我想提及的并是不.NET CLR版本设置为“无托管代码”,而是另一个比较隐秘的设置。在应用程序池的高级设置中有一个“加载用户配置文件”选项,我本地(Win10系统)默认是True,所以在其
他工作完成后系统就能正常运行,但我将文件移到服务器(Windows Server 2008)上时,并不能成功运行,后面仔细对比,才发现服务器上该选项默认是False,修改为True后错误页随之消失了。
关于这个选项,我还继续深究了一下,在本地环境下将该选项改为False,系统也可以正常运行,但服务器上却不行,比较分析应该是环境的原因吧。
后记:通过这次实践,我总结出了两个经验:1、多看官方手册,很多问题官方文档里都考虑到了,但问题是对有些问题而言官方文档太专业,小白看着吃力,比如我,所以说知识的厚度决定了解
决问题的难易程度,也定格了看问题的深度。2、既然知道了知识的重要性,那第二个经验自然就是好好学习咯。
参考文献:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.2
20190705-记IIS发布.NET CORE框架系统之所遇的更多相关文章
- List多个字段标识过滤 IIS发布.net core mvc web站点 ASP.NET Core 实战:构建带有版本控制的 API 接口 ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目 Using AutoFac
List多个字段标识过滤 class Program{ public static void Main(string[] args) { List<T> list = new List& ...
- IIS发布.net core mvc web站点
这里只有操作步骤! 第一.查看IIS是否安装了 AspNetCoreModule,查看路径:IIS->模块 查看 安装步骤 下载网址:https://www.microsoft.com/net/ ...
- windows IIS发布.net core网站的环境配置
1.安装对应的.net core的runtime2.安装Windows Server Hosting下载地址:https://www.microsoft.com/net/download/core#/ ...
- 记CentOS 发布.NET Core 2.0
centos 7.x sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc sudo sh -c 'echo -e & ...
- 记一次IIS发布网站导致系统时常跳入登录页面的问题解决
服务器:winserver2012R2 iis 发布网站后,正常浏览网页,时常跳到登录页面,第一反应session过期,因为登录信息都存在session,但session 都是默认配置过期时间为20分 ...
- 在IIS下发布.Net Core MVC项目
1. 默认你已经安装了IIS,并且创建了一个.Net Core 项目 2. 发布.NET Core项目 在vs中右键点击MVC项目,点击"发布"按钮,选择"文件系统&qu ...
- IIS发布ASP.NET Core
安装IIS.程序和功能--程序卸载--启用或关闭Windows功能 安装.NET Core SDK和Runtime.下载网址 https://www.microsoft.com/net/downloa ...
- .net core service && angular项目 iis发布
项目结构 .net core 后端服务站点 angular 前端页面站点 项目模板来自于abp或者52abp .net core 后端服务站点发布到IIS 发布报错 .Net Core使用IIS部署出 ...
- 使用VS 2019发布.net core程序并部署到IIS的最新教程
不管你是使用.net core开发的是web api还是网站类的程序,如果你是部署到IIS,那么下面的内容都适合于你,不会将.net core程序部署到IIS的朋友,可以看看这篇手把手教你部署.net ...
随机推荐
- 日常运维中的相关日志切割处理方法总结 [Logrotate、python、shell脚本实现 ]
对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了Logrotate,争相发明自己的轮 ...
- android studio: 对齐成员变量及链式方法
"File"-"Settings"-"Editor"-"Java"-"Wrapping and Braces& ...
- 《浅谈F5健康检查常用的几种方式》—那些你应该知道的知识(二)
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/sinat_17736151/articl ...
- PHP 二维数组去重(保留各个键值的同时去除重复的项)
对于如下二维数组,要求对其进行去重: $arr = array( '=>array( 'name'=>'james', , ), '=>array( 'name'=>'susu ...
- OctetString 转String
/// <summary> /// OctetString转时间 /// </summary> /// <param name="ss">字符串 ...
- wpf程序,只允许运行一个程序实例问题
https://bbs.csdn.net/topics/390486402 https://codereview.stackexchange.com/questions/20871/single-in ...
- 报错:Unable to read additional data from client sessionid 0x36ab52d38c20b20, likely client has closed socket
报错背景: CDH集群中,将kafka和Flume整合,将kafka的数据发送给Flume消费. 启动kafka的时候正常,但是启动Flume的时候出现了报错现象. 但是我检查了Flume,Flume ...
- 第5课.linux进阶命令
1.find:查找符合条件的文件 格式: find 目录名 选项 查找条件 eg: find /work/001_linux_basic/dira/ -name "test1.txt&quo ...
- 【MPEG】DVB / ATSC / ISDB区别
硬件的区别: 欧洲“DVB标准”和美国“ATSC数字电视标准”的主要区别如下: (1)方形像素:在ATSC标准中采纳了“方形像素”(Square Picture Eelements),因为它们更加适合 ...
- 使用video.js 7在html中播放rtmp视频流
1.背景 最近要做摄像头视频的展示,不想使用硬件方的专用插件,所以计划视频推送到SRS服务器,浏览器再通过rtmp协议显示,类似于直播. 经查询,了解到可以用ckplayer(有许可条款)和video ...