.NetCore程序发布到IIS上面
一、概述
在传统的.NET Framework中,ASP.NET程序发布到IIS上面,是由IIS的工作进程(w3wp.exe)托管的,在任务管理器中可以找到该进程。在ASP.NET Core程序中不再是由IIS工作进程托管,而是使用自托管Web服务器(Kestrel)运行,IIS则是作为反向代理的角色转发请求到Kestrel不同端口的ASP.NET Core程序中,然后将接收到的请求推送至中间件管道中,处理完请求后在将HTTP响应数据重新回写到IIS中,最终通过IIS转达到不同的客户端。在这过程中,最重要的角色便是AspNetCoreModule(.net core 2.0以上版本中是AspNetCoreModuleV2),它是IIS中的一个模块,HTTP请求进入到IIS之后便立即由它转发,并迅速重定向到ASP.NET Core项目中。因为IIS只是作为反向代理负责转发请求,不负责监听HTTP请求端口,所以不需要使用应用程序池来托管我们的代码。
1、查看是否安装AspNetCoreModule
在IIS中选中主页,然后选择功能视图里面的模块,如下图所示:
双击进入模块,查看是否安装,如下图所示:
注意:
如果没有AspNetCoreModule,需要去微软网站下载.net core Runtime,网址:
https://dotnet.microsoft.com/download
下载.NET Core runtime
二、发布项目
这里选择发布到文件系统。
1、在要发布的项目上面右键选择发布,如下图所示:
2、选择要发布到的文件夹
3、高级配置
点击高级,可以打开配置界面,在这里可以配置生成模式(Debug或者Release)、目标框架等,如下图所示:
4、发布
点击高级里面的保存,然后点击发布按钮,开始发布程序,出现如下图所示的界面表示发布完成。
三、在IIS中添加网站
1、添加网站
在IIS中添加一个网站,设置网站名称,并将网站的物理路径指向刚才程序发布的文件夹,如下图所示:
2、设置应用程序池
在前面的概述中已经说过:IIS在这里只是作为反向代理,不负责托管代码,所以要把应用程序池的.NET CLR版本设置成“无托管代码”,如下图所示:
3、浏览网站
在.NET Framework编写的ASP.NET项目中,选中左侧的网站,然后点击右侧的浏览,即可浏览网站,在.NET Core项目中需要手动输入完整的网址才可以浏览,不能直接浏览,如果直接浏览,会提示找不到网页,如下图所示:
重新访问:http://localhost:10012/api/values
到此为止,如何将一个.NET Core程序发布到IIS上面已经讲解完成。
.NetCore程序发布到IIS上面的更多相关文章
- Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二)
Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一) 接上一篇 3. Nginx配置反向代理 3.1 cnetos 安装nginx 首先,我们需要在服务器上安装N ...
- Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一)
环境 本地 win7 服务器:Virtual Box 上的Centos ssh工具: Xshell 文件传输: xftp 1.在本地创建asp.net core应用发布 1.1 使用Vs2017 新建 ...
- 3.怎样将ASP.NET MVC应用程序发布到IIS
这一篇,教大家怎么将ASP.NET MVC应用程序发布到本地或者IIS中.打开上一篇创建的ASP.NET MVC 5.0应用程序.[PS:上一篇--->2.第一个ASP.NET MVC 5.0应 ...
- net Core 2.0应用程序发布到IIS
.net Core 2.0应用程序发布到IIS上注意事项 .net Core2.0应用程序发布window服务器报错容易错过的配置. 1.应用程序发布. 2.IIS上新建网站. 3.应用程序池选择 ...
- Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践
原文:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践 环境 本地 win7 服务器:Virtual Box 上的Centos ssh工具: Xshell 文件传输 ...
- .net Core 2.0应用程序发布到IIS上注意事项
.net Core2.0应用程序发布window服务器报错容易错过的配置. 1.应用程序发布. 2.IIS上新建网站. 3.应用程序池选择无托管代码. 4.服务器上安装DotNetCore.1.0.1 ...
- [转]关于vs调试正确。但是发布到iis就出现无法访问后天局面
最近使用extjs+ashx进行ajax请求过程操作的时候发现一个问题..当我把程序发布到iis的时候就出现一只不执行到success回调函数. 当弹出状态值一看尽然是500.我就纳闷了.又没有语法错 ...
- win7安装IIS及将网站发布到IIS上
1. WIN7安装IIS: 控制面板----程序和功能-----打开或关闭windows功能,如图 展开Internet信息服务,按照下图方式进行选择,然后单击"确定",等待几分 ...
- 无法用Put方式请求发布在IIS中的WebAPI
WebApi程序发布到IIS上后,无法使用Put的方式进行请求,错误信息如下: 原因和解决方案: 在IIS中默认不支持Put请求和Delete请求,因为IIS中注册的Web ...
随机推荐
- vs 2017打包安装包(印象深刻)
Visual Studio Install 打包安装项目2017 以下是具体步骤 一.安装环境 1.下载:链接地址 2.安装vs2017的时候需要安装依赖 .NET framework 4.6 .下载 ...
- MySql(二):MySql架构组成
主要架构就是这张图展示的 具体细节看下面文章: MySql 物理文件组成 MySQL 自带工具使用介绍 Mysql Server系统架构介绍
- Android Studio 1.1.0 向导页(首页) 解析,以及版本控制 (SVN 和 GIT 的检出)
使用Android Studio首先要理清楚, Android Studio 的 project 相当于Eclipse的 Workspace Android Studio 的 module 相当于E ...
- jQuery添加/改变/移除CSS类
转自:http://www.jbxue.com/article/24589.html 在jquery中用到removeClass移除CSS类.addClass添加CSS类.toggleClass添加或 ...
- Atitit 项目源码的架构,框架,配置与环境说明模板 规范 标准化
Atitit 项目源码的架构,框架,配置与环境说明模板 规范 标准化 版本1.0 作者 艾龙 attilax 1. 概述:核心业务: 1 1.1. 功能文档路径 /palmWin/src/docum ...
- 压力测试工具ab及centos下单独安装方法 nginx和tomcat静态资源的性能测试
Apache安装包中自带的压力测试工具Apache Benchmark(简称ab)简单易用,这里采用ab作为压国测试工具. 独立安装: ab运行需要信赖apr-util包: # yum install ...
- DOUHAO
https://www.java-forums.org/new-java/42610-java-regular-expressions-comma-seperated-list.html https: ...
- Frick'ing Terrain Mesh!
CDLOD地形的实现方法步骤: 1.实现完全二叉树结构的创建2.实现完全四叉树的视锥裁剪与LOD选择(包括节点的部分选择功能)3.使用forward rendering, 实现已选择四叉树节点的普通渲 ...
- webpack打包调试react并使用babel编译jsx配置方法
http://lxj8749.iteye.com/blog/2287074 ********************************************** 安装webpack npm i ...
- js实现文本框文本域光标处插入图片文本的插件(并且光标在插入内容的内容后显示)
js: /******************************************* * * 插入光标处的插件 * @authors Du xin li * @update 2015 ...