一、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

转载于:https://www.cnblogs.com/1175429393wljblog/p/8329023.html

ASP .NET CORE MVC 部署Windows 系统上 IIS具体步骤---.Net Core 部署到 IIS位系统中的步骤...相关推荐

  1. Mint系统使用介绍,Mint系统安装,在Mint系统上搭建GPU环境,在Mint系统上安装Pycharm、Anaconda等软件,在Mint系统上安装cuda和cudnn

    欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 Mint系统使用介绍,Mint系统安装,在Mint系统上搭建GPU环境,在Mint系统上安装Pycharm.Anacon ...

  2. vc++64位系统下long的长度为4个字节_64位系统究竟牛逼在哪里?

    想必大家都遇到过这样的问题:安装某个软件的时候,出现提示选择32位版本还是64位版本?我们也可以查看自己的电脑是32位还是64位系统. Windows Linux 大家可能知道32位和64位和系统有关 ...

  3. 计算机配置64位,任何电脑都可以装64位系统吗|是不是所有的电脑都可以装64位系统...

    电脑都可以装64位系统吗?相信大家都看到,现在新买的电脑都是自带64位系统,这时候就有部分用户产生了疑惑,是不是所有电脑都能装64位系统?其实不然!操作系统分32位和64位,就说明了有些电脑不能装64 ...

  4. 现在计算机有64位吗,任何电脑都可以装64位系统吗|是不是所有的电脑都可以装64位系统...

    电脑都可以装64位系统吗?相信大家都看到,现在新买的电脑都是自带64位系统,这时候就有部分用户产生了疑惑,是不是所有电脑都能装64位系统?其实不然!操作系统分32位和64位,就说明了有些电脑不能装64 ...

  5. 计算机32位操作系统最大识别到内存,win7 32位系统可以支持多大的内存_win7 的32位系统最大支持多少g的内存...

    大家都知道win7系统有32位和64位之分,而两者的安装配置是不一样的,一般4G内存的我们安装64位的系统,但是很多用户不知道win7 32位系统可以支持多大的内存,这就给大家分享一下win7 的32 ...

  6. Mysql5.7.26解压版(免安装版)简单快速配置步骤,5分钟搞定(win10-64位系统)

    第一次安装mysql环境的时候,总会遇到各种各样的坑,在尝试了安装版和解压版的数据库之后,感觉mysql的解压版更加的简单方便,省去好多时间做专业的事情 我这里选择的是5.7.26版本,解压版下载地址 ...

  7. 32位计算机分配的最大内存大小,32位系统支持多大内存,教您如何提升32位系统的内存...

    民用的32位的操作系统的内存都是4G,但犹豫要保留一部分供给硬件使用,所以留给用户的可用内存就比较少了,一般来说只有3.2G到3.5G左右,剩下的就都浪费了,那么,该怎么避免这种浪费呢?又应该如何去提 ...

  8. asp.net core MVC程序通过AJAX上传文件报“400 Bad Request”

      微软asp.net core上传文件示例中的流式文件上传示例采用AJAX调用控制器函数上传,但是将此部分代码剥离出来运行时,会报下图所示的"400 Bad Request"的错 ...

  9. Asp.net实现MVC处理文件的上传下载删除功能实例教程

    上传于下载功能是程序设计中非常常见的一个功能,在ASP.NET程序开发中有着非常广泛的应用.本文就以实例形式来实现这一功能. 一.概述 如果你仅仅只有Asp.net Web Forms背景转而学习As ...

  10. 用MDT 2012为企业部署windows 7(七)--创建标准操作系统部署任务序列

    前几篇文章我们已经就基础环境,以及其他必须了解得东西做做了介绍,虽然经历过项目几个月,但是很久不用就会变得生疏,现在版本又升级到了MDT 2012自然又有所改变.所以自己也通过环境做了很多测试,也发现 ...

最新文章

  1. 这个为生信学习打造的开源Linux教程真香!!!
  2. 50个查询系列-第二个查询
  3. Qt坐标系以及自定义可移动控件
  4. HH SaaS电商系统的仓储系统设计
  5. 计算机组成说明,计算机组成与系统结构考试说明.ppt
  6. TabControl与UserControl合伙吃内存
  7. 2线性模型 r语言_多层线性模型在R语言上的实现(三)
  8. 编写SQL Server数据库对象脚本的方法
  9. 达内python第二阶段月考_Python编程练习题二
  10. ASP 读取Word文档内容简单示例
  11. (一)【模电】(第一章 常用半导体器件)半导体基础知识
  12. 算法语句高中数学计算机,高中数学《基本算法语句》文字素材3 新人教A版必修3...
  13. 云班课python答案_云班课测试题答案公众号
  14. 如何查看linux内核版本
  15. 【报错】部署portainer可视化工具报错
  16. ML之PDP:基于FIFA 2018 Statistics(2018年俄罗斯世界杯足球赛)球队比赛之星分类预测数据集利用DT决策树RF随机森林+PDP部分依赖图可视化实现模型可解释性之详细攻略
  17. 一只猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第N天早上想再吃时,见只剩下一个桃子了。
  18. buildroot认知
  19. APK反编译后修改成功打包
  20. 怎么看xp系统的服务器名称,绿茶Ghostxp系统如何查看本机dns服务器地址[图文]

热门文章

  1. iphone 利用UIImageView来制作幻灯片
  2. 玩转VIM编辑器-vim的命令行
  3. 移动存储设备数据卡和闪存盘等半导体存储式设备,数据消失被格式化,如何拯救恢复?
  4. 震惊!人工智能已经发展到这个地步了
  5. 偷偷告诉你,互联网公司理想的技术架构!
  6. 年轻人,在公司混日子,伤害的是自己!
  7. maven-将依赖的 jar包一起打包到项目 jar 包中
  8. 持久化/Session和SessionFactory线程非安全和安全/Hibernate的优势
  9. 【iOS】打印方法名
  10. C# Lambda表达式使用累加器例子