翻译如下:

支持的操作系统

  Windows 7及更高版本

  Windows Server 2008 R2及更高版本

  概念上,本文档中描述的IIS配置也适用于在Nano Server IIS上托管ASP.NET Core应用程序,但是请参阅Nano Server上的ASP.NET Core 以获取特定说明。

IIS配置

  启用Web服务器(IIS)服务器角色并建立角色服务。

   Windows桌面操作系统:

  导航到:控制面板>程序>程序和功能>打开或关闭Windows功能(屏幕左侧), 打开Internet信息服务和Web管理工具组。 选中IIS Management Console 的框。 选中World Wide Web Services的框。 接受World Wide Web Services 的默认功能或自定义IIS功能 以满足您的需要。

  Windows Server操作系统:

   对于服务器操作系统,请通过管理菜单或服务器管理器中的链接使用添加角色和功能向导。 在服务器角色步骤中,选中Web服务器(IIS)的框。

  在“角色服务”步骤上,选择所需的IIS角色服务或接受所提供的默认角色服务。

  

  继续执行确认步骤以启用Web服务器角色和服务。

安装.NET核心Windows Server主机包

在服务器上安装.NET Core Windows Server Hosting软件包。该包将安装.NET核心运行时,.NET核心库和ASP.NET核心模块。该模块在IIS和Kestrel服务器之间创建反向代理。
重新启动服务器或执行net stop was / y,然后从命令行启动net start w3svc,以检索对系统PATH的更改。
有关ASP.NET核心模块的更多信息,包括模块的配置和使用web.config设置环境变量,使用app_offline.htm挂起请求处理和激活模块日志记录,请参阅ASP.NET核心模块配置参考。

应用程序配置

启用IISIntegration组件
在应用程序依赖项中包含对Microsoft.AspNetCore.Server.IISIntegration软件包的依赖项。通过将.UseIISIntegration()扩展方法添加到WebHostBuilder(),将IIS集成中间件合并到应用程序中。

var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();

  

请注意,调用.UseIISIntegration()的代码不会影响代码的可移植性。

为IISIntegration服务设置IISOptions
要配置IISIntegration服务选项,请在ConfigureServices中包含IISOptions的服务配置。

services.Configure<IISOptions>(options => {
...
});

  

常见错误

  以下不是完整的错误列表。 如果您遇到此处未列出的错误,请在下面的DISQUS部分留下详细的错误消息(单击显示注释以打开DISQUS面板)。

  要诊断IIS部署的问题,请研究浏览器输出,通过事件查看器检查服务器的应用程序日志,并启用模块日志记录。 ASP.NET Core模块日志将在web.config中<aspNetCore>元素的stdoutLogFile属性中提供的路径上找到。 属性值中提供的路径上的任何文件夹必须在部署中存在。 您还必须设置stdoutLogEnabled =“true”以启用模块日志记录。 使用publish-iis工具创建web.config文件的应用程序将默认stdoutLogEnabled设置为false,因此必须手动提供文件或修改文件以启用模块日志记录。

Asp.Net Core--发布到IIS的更多相关文章

  1. asp.net core 发布到iis session无法传递的问题

    网站是用asp.net core 的Razor Pages开发的,其中用户登录用到了session,调试运行没有问题,但是发布到iis之后出现session无法记录的问题. 我用log记录查看了一下, ...

  2. HTTP Error 502.5 - ANCM Out-Of-Process Asp.Net Core发布到IIS失败

    问题概述 asp.net core网站发布到windows server 2012r2 IIS后,出现这个报错.dotnet xx.dll命令网站能够正常运行.说明不是程序问题. 经过一番折腾终于部署 ...

  3. ASP.Net Core 发布到IIS Http Error 502.5 官方解决办法

    Http Error 502.5 - Process Failure 在IIS上发布.NET Core程序出现这个错误.网上搜索到的办法为什么总行不通呢? 有可能年代久远,现在的环境与当年不同,所以解 ...

  4. ASP.NET Core 发布至Linux生产环境 Ubuntu 系统

    ASP.NET Core 发布至Linux生产环境 Ubuntu 系统,之前跟大家讲解了 dotnet publish 发布,而没有将整个系统串起来. 今天就跟大家综合的讲一下ASP.NET Core ...

  5. [转]Publishing and Running ASP.NET Core Applications with IIS

    本文转自:https://weblog.west-wind.com/posts/2016/Jun/06/Publishing-and-Running-ASPNET-Core-Applications- ...

  6. asp.net core 发布到 docker 容器时文件体积过大及服务端口的配置疑问

    在 asp.net core 发布时,本人先后产生了3个疑问. 1.发布的程序为什么不能在docker容器中运行 当时在window开发环境中发布后,dotnet xxx.dll可以正常运行:但放入d ...

  7. ASP.NET Core 发布

    ASP.NET Core 发布,asp.netcore发布 第一步:运行 dotnet restore 命令,以还原项目中指定的依赖项 dotnet restore 第二步:使用 dotnet bui ...

  8. ASP.NET Core 2.0 MVC 发布部署--------- ASP.NET Core 发布的具体操作

    ASP.NET Core 发布的具体操作 下面使用C# 编写的ASP.NET Core Web项目示例说明发布的全过程. 1.创建项目 选择“文件” > “新建” > “项目”. 在“添加 ...

  9. 使用 Visual Studio 部署 .NET Core 应用 ——ASP.NET Core 发布的具体操作

    ASP.NET Core 发布的具体操作 下面使用C# 编写的ASP.NET Core Web项目示例说明发布的全过程. 1.创建项目 选择“文件” > “新建” > “项目”. 在“添加 ...

  10. 发布ASP.NET Core网站到IIS

    打开VS2015,新建项目: 选择模板,取消身份验证: 项目加载完成后就可以运行了: 下面要发布到IIS: 需要安装从IIS到Kestrel server的反向代理,下载地址:.NET Core Wi ...

随机推荐

  1. AC日记——蓬莱山辉夜 codevs 2830

    2830 蓬莱山辉夜  时间限制: 1 s  空间限制: 32000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Description 在幻想乡中,蓬莱山辉夜是月球 ...

  2. python下print结果到文件中的方法

    目的是将print的结果输出到一个文件中,比如这个文件在D:\lianxi\out.txt下,我用的windows: s = '1234' f = open (r'D:\lianxi\out.txt' ...

  3. [LeetCode] Merge Sorted Array 混合插入有序数组

    Given two sorted integer arrays A and B, merge B into A as one sorted array. Note:You may assume tha ...

  4. Openfire 集群部署和负载均衡方案

    Openfire 集群部署和负载均衡方案 一.   概述 Openfire是在即时通讯中广泛使用的XMPP协议通讯服务器,本方案采用Openfire的Hazelcast插件进行集群部署,采用Hapro ...

  5. SQL Server 中使用数据类型表示小数

    在使用的时候发现一个问题,由于编程的习惯,当数据库中需要存储小数的时候,就想当然的使用了float类型,可结果太让人意外了. 数据库中存储了0.5没问题,当使用0.6的时候,得到的确是0.599999 ...

  6. 初探Socket

    使用Socket Socket是两台主机之间的一个连接,它可以完成7个操作. 连接远程机器 发送数据 接收数据 关闭连接 绑定端口 监听入站数据 在绑定端口上接受来自远程机器的连接 Java中的Soc ...

  7. APP逆向常识

    SO库Linux系统下的动态库文件,就像win系统下的dll文件一样.将APK,改成RAR,在Lib目录下.dex(classes.dex)Dex是Android系统中可以在Dalvik虚拟机上直接运 ...

  8. 字节、字、bit、byte的关系

    字 word 字节 byte 位 bit 字长是指字的长度 1字=2字节(1 word = 2 byte) 1字节=8位(1 byte = 8bit)  一个字的字长为16 一个字节的字长是8 bps ...

  9. Rabbitmq集群升级方案

    升级Rabbitmq 3.6.3版本至3.6.6版本,升级过程中的一些关键步骤记录 Step 1: 顺序关闭集群所有节点,这里注意最后一个关闭的节点必须保证为硬盘节点,而非RAM节点: centOS ...

  10. mongodb安装启动遇到的问题

    好不容易下载到了mongodb,配置的时候遇到了不少问题. 下载的是解压包,不是官网的,有一个bin目录,解压到一个自己想要的目录,如d:\mongo,首先把bin复制进来,然后创建data目录,da ...