读取web.config时出现IIS错误500.19错误

问题描述 投票:0回答:1

我在 Windows Server 2016 下运行 IIS,我正在尝试运行 ASP.Net core 3.1 应用程序,但我无法克服此错误: 500.19 error

(图片中的语言是匈牙利语,但它没有任何有用的信息,只是一个例子) 这是我的 web.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath=".\Minibizz.Routing.Web.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
    </system.webServer>
  </location>
</configuration>

我错过了什么? P.S.: web.config 由 Visual Studio 2019 创建。

asp.net .net iis hosting internal-server-error
1个回答
0
投票

问题背后的原因: 该错误消息继续说明您的配置文件究竟有什么问题,因此您应该参考“配置错误”和“配置源”部分。出现此问题的原因是 ApplicationHost.config 文件或 Web.config 文件包含格式错误或不受支持的 XML 元素。

如果您使用的是 url 重写规则,则安装 iis 的 url 重写扩展。启用 ANCM 日志记录,即。设置 stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout\"(我认为路径需要以反斜杠结尾),然后运行 Web 应用程序并查看是否有内容记录到 stdout 文件夹中。验证日志目录是否存在于 Web 配置引用的路径中。如果没有,请创建它。配置中显示的路径会将“日志”目录放置在已部署站点的根文件夹中。验证应用程序池是否具有对日志目录的写入权限。

确保您安装了 .net 包。检查您是否安装了以下 iis 功能:

您可能还需要验证部署机器的环境变量中是否存在指向 dotnet 可执行文件的路径。要检查这一点,首先找到安装 dotnet.exe 的路径。它通常位于 C:\Program Files\dotnet 或 C:\Program Files (x86)\dotnet 中。知道路径后,请确保该路径存在于您的环境变量中。

web.config 内容似乎是正确的。如果您使用干净的 web.config 副本,问题是否仍然存在?如果问题可以通过用干净的配置内容替换 web.config 来解决,那么问题就出在这个 web.config 上。在这种情况下,我建议您删除部分 web.config 内容以缩小问题范围。如果在您删除一个部分后页面显示正确,则问题出在该部分。您需要仔细检查该部分有什么问题并更新正确的配置。

如果即使使用干净的 web.config 内容问题仍然存在,我建议您访问站点中不同文件夹中的其他页面,看看问题是否仍然存在。

您可以参考以下链接了解如何在 iis 中发布 asp.net 核心站点:

https://learn.microsoft.com/en-us/aspnet/core/tutorials/publish-to-iis?view=aspnetcore-3.1&tabs=visual-studio

© www.soinside.com 2019 - 2024. All rights reserved.