.NET core2.0 发布至IIS中
.NET CORE和asp.net 发布时不太一样,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行,IIS则是作为反向代理的角色转发请求到Kestrel不同端口的ASP.NET Core程序中,随后就将接收到的请求推送至中间件管道中去,处理完你的请求和相关业务逻辑之后再将HTTP响应数据重新回写到IIS中,最终转达到不同的客户端(浏览器,APP,客户端等)。而配置文件和过程都会由些许调整,中间最重要的角色便是AspNetCoreModule,它是其中一个的IIS模块,请求进入到IIS之后便立即由它转发,并迅速重定向到ASP.NET Core项目中,这时候我们无需设置应用程序池来托管我们的代码,它只负责转发请求而已.所以发布时最重要的还是看我们的AspNetCoreModule是否存在


进入这个模块就可以看到你是否安装了托管捆绑包AspNetCoreModule,没有的话可以点击这里进行下载,
如果还是没有找到或者不知道怎样下载.在我的百度网盘中下载安装就行了,密码:nrt2
安装好了之后就是这个样子

接下来和asp.net 发布时一样,新建一个网站就行了,为了方便演示,名称这里用DotNetCoreDemo,路径用一个方便寻找的路径

接着就是重点了,应用程序池配置稍微不太一样,.NET CLR版本选择无托管代码,托管管道模式选择集成

好了,准备工作完成了,接下来就是文件的发布了,发布文件有两种方式,可以通过命令发布,也可以通过VS进行发布
通过CMD找到你的文件所在的路径,这里就简单通过命令创建一个.net core2.0 的MVC的程序DotNetCoreDemo
创建命令: dotnet new mvc

接着通过命令dotnet publish进行发布( 在项目的目录路径),如果用这个命令他会默认发布在bin文件的Debug中


这个不是我们想要的,我们必须发布到指定路径,刚才我们IIS发布选择的物理路径路径是在 E:\发布\DotNetCoreDemo 这里所以,我们发布的时候必须指定路劲
命令: dotnet publish -o 路径
这里就是 dotnet publish -o E:\发布\DotNetCoreDemo

好了现在就发布好了

通过VS进行发布:
这个就和以前的ASP.NET 发布差不多了,我现在用的是VS2017,发布的时候直接选择文件夹就可以了,路径就选择IIS配置的物理路径

终于完成了,来看一下最后的成果

PS:
AspNetCoreModule一定和NET CORE 版本相对应,我这里用的..NET CORE2.0 ,所以捆绑程序包(.NET Core Windows Server Hosting)也用的2.0,如果版本不对应则会报错502.5的错误

.NET core2.0 发布至IIS中的更多相关文章
- asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” http:// ...
- MVC 发布到IIS中的配置方法
MVC 发布到IIS中的配置方法 http://msdn.microsoft.com/zh-cn/library/gg703322(v=vs.98).aspx
- 【转】asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
原文:http://blog.csdn.net/mazhaojuan/article/details/7660657 开发web项目时需要安装IIS,在安装好IIS的Windows7本上发布asp.n ...
- WCF服务发布到IIS中去 在WCF调试
第一个WCF程序 1. 新建立空白解决方案,并在解决方案中新建项目,项目类型为:WCF服务应用程序.建立完成后如下图所示: 2.删除系统生成的两个文件IService1.cs与Service1.svc ...
- asp.net core 2.0发布到IIS流程及报错解决方案
我这是个新装的服务器,没有安装任何软件. 一.发布流程 1.安装AspNetCoreModule托管模块,同时会自动安装..net core runtime DotNetCore.2.0.8-Wi ...
- .NET CORE2.0发布后没有 VIEWS视图页面文件
以前做的CORE1.0的项目,发布的时候有views文件夹的,升级VS后用CORE2.0做项目,发布后没有views文件夹了,全编译到一个类似于Niunan.ZYYCY.Web.Precompiled ...
- WCF服务发布到IIS中去(VS2013+win7系统)
第一个WCF程序 1. 新建立空白解决方案,并在解决方案中新建项目,项目类型为:WCF服务应用程序.建立完成后如下图所示: 2.删除系统生成的两个文件IService1.cs与Service1.svc ...
- [翻译]在asp.net core2.0 OpenID Connect Handler中丢失了声明(CLaims)?
注:这是一篇翻译,来自这里.这篇文章讲述了在asp.net core2.0中使用openid connect handler的过程中解析不到你想要的claim时,你可以参考这篇文章. Missing ...
- 无法用Put方式请求发布在IIS中的WebAPI
WebApi程序发布到IIS上后,无法使用Put的方式进行请求,错误信息如下: 原因和解决方案: 在IIS中默认不支持Put请求和Delete请求,因为IIS中注册的Web ...
随机推荐
- V8引擎的垃圾回收策略
V8 的垃圾回收策略主要基于分代式垃圾回收机制.所谓分代式,就是将内存空间分为新生代和老生代两种,然后采用不同的回收算法进行回收. 新生代空间 新生代空间中的对象为存活时间较短的对象,大多数的对象被分 ...
- Redis常用数据类型和事物以及并发
Redis数据类型 基本类型(String int): 如 set key value .get key 等 所有命令都是按照 key value keys * 可以将全部数据列出,其中后面的 &qu ...
- ES 06 - 通过Kibana插件增删改查ES中的索引文档
目录 1 document的结构 2 document的常见CRUD操作 2.1 添加商品: 添加文档并建立索引 2.2 查询商品: 检索文档 2.3 修改商品: 替换文档 2.4 修改商品: 更新文 ...
- 前端笔记之服务器&Ajax(下)数据请求&解决跨域&三级联动&session&堆栈
一.请求后端的JSON数据 JSON是前后端通信的交互格式,JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式. JSON是互联网各个后台与 ...
- JavaScript夯实基础系列(四):原型
在JavaScript中有六种数据类型:number.string.boolean.null.undefined以及对象,ES6加入了一种新的数据类型symbol.其中对象称为引用类型,其他数据类 ...
- Python实现Singleton模式的几种方式
使用python实现设计模式中的单例模式.单例模式是一种比较常用的设计模式,其实现和使用场景判定都是相对容易的.本文将简要介绍一下python中实现单例模式的几种常见方式和原理.一方面可以加深对pyt ...
- 文件输入输出流工具: IOUtils使用总结
序言 以前写文件的复制很麻烦,需要各种输入流,然后读取line,输出到输出流...其实apache.commons.io里面提供了输入流输出流的常用工具方法,非常方便.下面就结合源码,看看IOUTil ...
- 一次node-sass安装记录
node-sass的版本是3.9.3 Please restart this script from an administrative PowerShell! 在当前powershell中执行下命令 ...
- WCF优雅使用 KnownType标记的方法
[KnownType("DerivedTypes")] [DataContract] public abstract class TaskBase { // other class ...
- 改行了,学C#
C#数组: 定义方法 ]; ,]; //这个是二维数组 只有这一种定义方法,不像java有多种定义方法.等号前面在栈中初始化类型为一维数组类型(int[])或二维数组类型(int[,])的存储堆中地址 ...