[英]How do I make Angular JS 1 routing work in ASP.Net MVC Core while running in 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
首先,您需要在 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
脚步 :
为什么需要托管包? 检查以下文章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.