繁体   English   中英

如何配置 .net 核心 API 以在 IIS 中工作?

[英]How do I configure a .net core API to work in IIS?

我在 Visual Studio 2017 中创建了一个运行良好的 .net 核心 API。 当我去部署它时,我收到错误消息 HTTP 错误 500.19,错误代码为 0x8007000d。 我在网上找到了多种解决方案,例如确保安装了 Windows 功能、删除 .net CLR 版本、更改应用程序池标识、更改 web.config 和 applicationHost.config,但没有任何效果。 有没有办法明确地找出问题所在,或者我是否在无数可能的解决方案中反复试验? 你知道任何具体的解决方案吗?

以下是 IIS 设置和我的 Windows 功能的屏幕截图:

在此处输入图片说明

这是我的 web.config 文件:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
    Configure your application settings in appsettings.json. Learn more at     http://go.microsoft.com/fwlink/?LinkId=786380
  -->
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*"
        modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet"
                arguments=".\DishbooksAPI.dll" 
                stdoutLogEnabled="false" 
                stdoutLogFile=".\logs\stdout" 
                forwardWindowsAuthToken="false" />
  </system.webServer>
</configuration>

这是 IIS 错误:

在此处输入图片说明

我尝试过的一些 stackoverflow 页面(这不是一个详尽的列表):

将 .net 核心项目发布到 iis 时出现 HTTP 错误 500.19

部署 .net 核心应用程序时出现 HTTP 错误 500.19,错误代码为 0x8007000d Visual Studio 2017

ASP.NET:HTTP 错误 500.19 – 内部服务器错误 0x8007000d

HTTP 错误 500.19 - 内部服务器错误 web config .net core web api

移动到不同的 IIS 服务器后,在 IIS 中发布的 asp.net core web api 给出错误 500.19

首先,您需要在 Web 服务器中安装ASP.NET Core 模块 这是下载链接

然后在 Web 服务器中安装SDK 或 Runtime

故障排除

如果它仍然不起作用,请打开命令提示符。 导航到 Web 应用程序文件夹并键入dotnet YOUR_APP.dll 你应该看到这样的——

C:\APIs> dotnet YOUR_APP.dll
Hosting environment: Production
Content root path: C:\APIs
Now listening on: http://localhost:5000
Application started: Press Ctrl+C to shut down.

这意味着您的应用程序可以在没有 IIS 的 Web 服务器中运行。 然后你需要在 IIS 或其他一些事情中进行故障排除。

您需要在 IIS 上安装托管包

https://dotnet.microsoft.com/download/dotnet-core

脚步 :

  1. 单击首选版本
  2. 搜索“Hosting Bundle”字样(应该在右侧)
  3. 安装一样
  4. 重新启动 IIS。 并验证您的网站并查看其神奇之处

为什么需要托管包? 检查以下文章https://dotnetcoretutorials.com/2019/12/23/hosting-an-asp-net-core-web-application-in-iis/

如何检查主机是否安装? 如何确定 Windows 服务器上是否安装了 asp.net core

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM