翻译如下:

支持的操作系统

  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. 安装ArcGIS Engine 9.3

    本文仅用于学习交流,商业用途请支持正版!转载请注明:http://www.cnblogs.com/mxbs/p/6217003.html 准备: ArcGIS Engine 9.3.crack_for ...

  2. Linux下的串口编程及非阻塞模式

    本篇介绍了如何在linux系统下向串口发送数据.包括read的阻塞和非阻塞.以及select方法. 打开串口 在Linux系统下,打开串口是通过使用标准的文件打开函数操作的. #include < ...

  3. [LeetCode] Find All Numbers Disappeared in an Array 找出数组中所有消失的数字

    Given an array of integers where 1 ≤ a[i] ≤ n (n = size of array), some elements appear twice and ot ...

  4. mysql函数大全

    对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NULL. mysql& ...

  5. java中IO流小解

    下面这张图列出了java中一些处理流: java中根据操作对象的不同可以分为:字节流和字符流. 首先我们先表示一下什么叫节点流和处理流: 节点流:可以从或向一个特定的地方(节点)读写数据.如FileR ...

  6. RN中listView的每个item等高

    今天写ListView的每个Item的布局的时候发现,当文字太长时被截掉了不能完全显示,检查了很久发现没有设置固定高度都是可伸缩的为什么没有伸缩呢.看了很久才发现每个item是等高的,于是仔细检查才看 ...

  7. 使用hexo,如果换了电脑怎么更新博客?

    自己今天想到这个问题,于是去知乎搜索了一番,发现不甚理想.没找到合适的,题目就是知乎原题.只好自己解决了.以下直接把自己的答案粘贴过来 今天我突然想到这个问题,想来参考参考,却发现都不太适合我.首先, ...

  8. Markdown编辑器测试

    Markdown 我是二级标题 public void add(int a,int b){ } 我是引用 我是分割线 - - - 1.x小项目1 2.项目2 无标题 无标题 家畜 ''' 代码块 '' ...

  9. bzoj2330: [SCOI2011]糖果

    2330: [SCOI2011]糖果 Time Limit: 10 Sec Memory Limit: 128 MB Description 幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友 ...

  10. python3--删除所有空目录,第一个有实际用处的程序

    #目标:删除所有空文件夹 #逐个判断某目录下所有项目 #若该项目是目录就进入该目录,完成上一步,不是下一个项目 #判断完所有后判断当前目录是否是空目录,是就删除 #需要管理员权限,否则很多目录无权限 ...