ASP .NET CORE MVC 部署Windows 系统上 IIS具体步骤---.Net Core 部署到 IIS位系统中的步骤
一、IIS 配置
启用 Web 服务器 (IIS) 角色并建立角色服务。
1、Windows Ddesktop 桌面操作系统(win7及更高版本)
导航到“控制面板” > “程序” > “程序和功能”> “启用或关闭 Windows 功能”。 打开“Internet Information Services”组和“Web 管理工具”。 选中“IIS 管理控制台”框, 选中“万维网服务”框。 接受“万维网服务”的默认功能,或自定义 IIS 功能。如下图1

图1
2、Windows Server 操作系统(本系统是 2012 R2 Standard)
对于服务器操作系统,通过“管理”菜单或“服务器管理器”中的链接使用“添加角色和功能”向导。 在“服务器角色”步骤中,选中“Web 服务器(IIS)”框。
如下图2

图2
继续执行“确认”步骤,安装 Web 服务器角色和服务。 安装 Web 服务器 (IIS) 角色后无需重启服务器/IIS。
二、安装 .NET Core Windows Server 托管捆绑包
在托管系统上安装 .NET Core Windows Server 托管捆绑包。 捆绑包可安装 .NET Core 运行时、.NET Core 库和 ASP.NET Core 模块。 该模块创建 IIS 与 Kestrel 服务器之间的反向代理。 如果系统没有 Internet 连接,请先获取并安装 Microsoft Visual C++ 2015 Redistributable,再安装 .NET Core Windows Server 托管捆绑包。
安装完成以后需要重启系统,或在命令提示符处依次执行 net stop was /y 和 net start w3svc,重启服务,了解系统路径的更改。
三、在 Visual Studio内使用Web 发布系统
本系统发布使用的是vs2017 企业版本,发布系统MmPS,发布成文件系统
1、在vs2017 中选中项目MmPS,右键,点击 发布 选项

2、在 发布 按钮下面 选择 创建新配置文件

3、点击 发布,即可完成发布系统MmPS,发布的项目在MmPS项目的bin\Release\PublishOutput 下的MmPSPublish。
四、web.config的配置
1、web.config 文件
web.config 文件的主要用途是配置 ASP.NET Core 模块。 它可以提供其他 IIS 配置设置。 web.config 的创建、转换和发布 由 .NET Core Web SDK (Microsoft.NET.Sdk.Web) 处理。 SDK 设置在项目文件 <Project Sdk="Microsoft.NET.Sdk.Web"> 的顶部。 要防止 SDK 转换 web.config 文件,请将 <IsTransformWebConfigDisabled> 属性添加到项目文件,并将其设置为 true:
XML
<PropertyGroup> <IsTransformWebConfigDisabled>true</IsTransformWebConfigDisabled>
</PropertyGroup>
如果项目中有 web.config 文件,则会使用正确 processPath 和参数转换该文件,以便配置 ASP.NET Core 模块,并将该文件移动到已发布的输出。 转换不会修改文件中的 IIS 配置设置。
2、web.config 位置
.NET Core 应用通过 IIS 与 Kestrel 服务器之间的反向代理托管。 为了创建反向代理,web.config 文件必须存在于已部署应用的内容根路径(通常为应用基路径)中,该路径是向 IIS 提供的网站物理路径。 若要使用 Web部署发布多个应用,应用的根路径中需要包含web.config 文件。敏感文件存在于应用的物理路径中,包括子文件夹,如 <assembly_name>.runtimeconfig.json、<assembly_name>.xml(XML 文档注释)和 <assembly_name>.deps.json。 存在 web.config 文件并使用该文件配置站点时,IIS 会阻止提供这些敏感文件。 因此,切勿意外重命名 web.config 文件或将其从部署中删除,这一点非常重要。
3、web.config 内容的配置
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\MmPS.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
<modules runAllManagedModulesForAllRequests="true" />
<directoryBrowse enabled="false" />
</system.webServer>
</configuration>
注:stdoutLogEnabled 是记录日志的,一本设置为true,方便查错。
五、IIS上部署创建 IIS 网站
1、在目标 IIS 系统上,创建一个文件夹,将应用的已发布文件夹和文件包含在其中,如MmPS项目的bin\Release\PublishOutput 下的MmPSPublish。
2、在文件夹中创建一个“日志”文件,用于在启用 stdout 日志记录时保存 stdout 日志。 如果部署应用时有效负载中包含了“日志”文件夹,请跳过此步骤。
3、在 IIS 管理器中创建新网站。 提供网站名称,并将物理路径设置为应用的部署文件夹。 提供“绑定”配置并创建网站。

4、将“应用程序池”设置为“无托管代码”。 ASP.NET Core 在单独的进程中运行,并管理运行时。

5、选中网站,右键 管理网站,浏览,既可运行网站了。

六、由于IIS会随着开机启动而自动启动网站服务,因此无需配置supe开机启动守护进程了。
7、测试
在浏览器中输入IP地址,看看网站是否可以正常运行。
参考链接:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/index?tabs=aspnetcore2x
ASP .NET CORE MVC 部署Windows 系统上 IIS具体步骤---.Net Core 部署到 IIS位系统中的步骤的更多相关文章
- 【tomcat 无法部署】svn上下载的maven项目无法部署到tomcat中
问题: svn上下载的maven项目无法部署到tomcat中,tomcat不识别项目,但是这个项目确实是web项目 发现的过程: 然后依次产看项目的编译版本: 项目的依赖架包: 才发现: 解决方法: ...
- Mysql5.7.26解压版(免安装版)简单快速配置步骤,5分钟搞定(win10-64位系统)
第一次安装mysql环境的时候,总会遇到各种各样的坑,在尝试了安装版和解压版的数据库之后,感觉mysql的解压版更加的简单方便,省去好多时间做专业的事情 我这里选择的是5.7.26版本,解压版下载地址 ...
- 使用Asp.Net Core MVC 开发项目实践[第四篇:基于EF Core的扩展2]
上篇我们说到了基于EFCore的基础扩展,这篇我们讲解下基于实体结合拉姆达表达式的自定义更新以及删除数据. 先说下原理:其实通过实体以及拉姆达表达式生成SQL语句去执行 第一种更新扩展: 自定义更新字 ...
- 使用Asp.Net Core MVC 开发项目实践[第三篇:基于EF Core的扩展]
上篇我们说到了EFCore的基础使用,这篇我们将讲解下基于EFCore的扩展. 我们在Mango.Framework.EFCore类库项目中创建一个类名EFExtended的扩展类,并且引入相关的命名 ...
- .Net Core WebApi(二)在Windows服务器上部署
上一篇学习到了如何简单的创建.Net Core Api和Swagger使用,既然写了接口,那么就需要部署到服务器上才能够正式使用.服务器主要用到了两种系统,Windows和Linux,.Net和Win ...
- ASP.NET Core 入门教程 7、ASP.NET Core MVC 分部视图入门
一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...
- ASP.NET Core 入门笔记8,ASP.NET Core MVC 分部视图入门
一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...
- ASP.NET Core MVC的基础学习笔记
最近由于“武汉肺炎”疫情在家办公,也没闲着,最近学习了一下asp.net core mvc的一些网页开发的的基础知识,话不多说直接上教程! 一.创建Web应用程序 1)创建新项目--->找到 “ ...
- IBM X3850 Windows 无法安装到这个磁盘。选中的磁盘具有MBR分区表。在 EFI 系统上,Windows 只能安装到 GPT 磁盘
以前安装的是window2003 32位, 改装为2012 64位的时候.出现 Windows 无法安装到这个磁盘.选中的磁盘具有MBR分区表.在 EFI 系统上,Windows 只能安装到 GPT ...
- ASP.NET Core MVC – Tag Helper 组件
ASP.NET Core Tag Helpers系列目录,这是第五篇,共五篇: ASP.NET Core MVC – Tag Helpers 介绍 ASP.NET Core MVC – Caching ...
随机推荐
- RabbitMQ 使用详细介绍
1. 实现最简单的队列通信 2. producer端 # !/usr/bin/env python import pika #通过这个实例,先去建立一个socket,默认端口15672 connect ...
- Qt 事件处理机制
Qt 事件处理机制 因为这篇文章写得特别好,将Qt的事件处理机制能够阐述的清晰有条理,并且便于学习.于是就装载过来了(本文做了排版,并删减了一些冗余的东西,希望原主勿怪),以供学习之用. 简介 在Qt ...
- NHibernate常见错误
Oracle 下必须用 Sequence [PrimaryKey(PrimaryKeyType.Sequence,"ID")] 1.提示 ORA-02289: 序列不存在 -- C ...
- Glide加载图片并保存到本地返回file,bitmap
有很多朋友都想要知道32位和64位的区别是什么,因为大家都拿不准自己要装32位系统还是64位系统,因此彷徨是必然的.那么到底区别是啥咧?如果大家想要知道的话,下面就让小编给大家带来32位和64位的区别 ...
- Docker学习笔记二:Docker常用命令及提升拉取镜像的速度
一.Docker命令: 1.docker images //命令用来查看docker中所包含的镜像信息 2.docker ps -a //命令用来查看docker中所包含所有容器信息(运行状 ...
- msiexec安装参数详解
原文链接地址:https://blog.csdn.net/wilson_guo/article/details/8151632 1 安装 /i表示安装,/x 表示卸载/f表示修复./l*v 表示输出详 ...
- 【hdu6051】If the starlight never fade
Portal --> hdu6051 Solution 神仙题qwq好吧我个人感觉是神仙题 这题其实有一个比较野路子的做法..就是..打表观察..反正场上ckw大佬就是这样把这题A穿的 ...
- 【字符串】KMP字符串匹配
百度百科 Definition \(KMP\)算法是一个字符串匹配算法.他接收两个字符串\(A,B\),返回\(B\)在\(A\)中出现的所有位置. 以下称需要被匹配的串\(A\)为主串,可能在主串中 ...
- js 判断图片是否加载完成(使用 onload 事件)
我们在写 jquery 的时候一般都会写 $(document).ready,加载完成事件还有一个就是 onload onload 与 ready 的区别是: 1.ready 是 DOM 加载完成的事 ...
- STL源码分析-rotate
http://note.youdao.com/noteshare?id=4ba8ff81aa96373ba11f1b82597ec73a