gpt4 book ai didi

asp.net - 当 apphost 配置中存在 system.web 配置时,IIS 8 中的 HTTP 错误 500.19

转载 作者:行者123 更新时间:2023-12-04 03:52:53 24 4
gpt4 key购买 nike

我们有一个实用程序,可以在安装到客户服务器上时自动设置 ASP.NET Web 应用程序。此实用程序通常会在 applicationHost.config 中为新应用的位置路径添加许多配置。我们使用 Microsoft.Web.Administration 配置类以编程方式执行此操作。

这在 IIS 7.0 和 IIS 7.5 中运行良好,但是当我们尝试在 IIS 8(Server 2012)中安装相同的配置时,由于据称格式错误的 XML 元素(HRESULT 0x8007000d),我们开始为服务器上托管的所有内容收到 500.19 服务器错误.我系统地检查了我们安装的所有配置,它似乎是 system.web/httpRuntime maxRequestLength 属性(见下文)。似乎 system.web 配置元素本身就是罪魁祸首,因为错误在它本身被删除之前不会消失。

我已经确认 system.web/httpRuntime 的部分定义声明它在任何地方都是允许的,并且您可以在配置的其他级别(例如 web.config)设置 system.web 配置而不会出现问题。为什么我们不能在 applicationHost.config 中设置它?

<location path="Default Web Site/ManagementConsole">
<!-- ... more config ... -->
<system.web>
<httpRuntime maxRequestLength="10240" />
</system.web>
</location>

编辑:在原始帖子之后,我注意到 500.19 错误引用的文件是一个临时应用程序池配置文件(C:\inetpub\temp\apppools\apppoolname\apppoolname.config。该文件的内容是:
<!-- ERROR: There's been an error reading or processing the applicationhost.config file.  Line number: 905  Error message: The configuration section 'system.web' cannot be read because it is missing a section declaration
-->

但是当我进入 applicationHost.config 并为 system.web 添加一个节组定义和一个为 httpRuntime 的节定义时,500.19 中的消息更改为声称存在重复的 system.web/httpRuntime 定义!所以我不能定义它,我也不能不定义它。什么??

最佳答案

我已经看到当未安装所有必要的模块时会发生此错误。它不会告诉您缺少模块,而是会提示配置已损坏。检查您在 IIS 7/7.5 机器上安装的相同模块是否也安装在 IIS 8 上。

关于asp.net - 当 apphost 配置中存在 system.web 配置时,IIS 8 中的 HTTP 错误 500.19,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14589905/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com