繁体   English   中英

如何修复HTTP错误500.22 - 内部服务器错误检测到的ASP.NET设置不适用于集成管理管道模式

[英]How to fix HTTP Error 500.22 - Internal Server Error An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode

我正在学习关于Http modules ,在上一次尝试中,我收到了:

HTTP错误500.22 - 内部服务器错误检测到的ASP.NET设置不适用于集成管理管道模式。

建议的解决方案之一是:

从IIS Express安装目录中,运行appcmd migrate config“Default Web Site /”。

所以从命令提示符我去了C\\Program Files\\IIS Express然后我执行了: appcmd migrate config "Default Web Site/"

我收到命令“对象配置”不支持“Migrate”。

怎么做得好?

Chk my SO Post

最后,我能够为VS.Net 2015及其IISExpress的配置破解它。 如果你不断在VS.Net之外修改IIS或IISExpress设置,那么IT就不可能“外部”配置它并且什么都不会起作用。

我花了一段时间来缩小我对VS.Net proj属性和配置的关注。 我发现VS.Net创建了自己的“applicationhost.config”版本,可以在以下位置找到:

<myProject.sln path> \\ .vs \\ config \\ applicationhost.config

这是我必须更改应用程序池的文件( applicationPool =“Clr4ClassicAppPool” ) -

    <sites>
        <site name="WebSite1" ... ignore this sction if present
        </site>
        <site name="myProject" id="2">
            <application path="/" applicationPool="Clr4ClassicAppPool">
                <virtualDirectory path="/" physicalPath="D:\Source\myProject" />
            </application>
            <bindings>
                <binding protocol="http" bindingInformation="*:1960:localhost" />
            </bindings>
        </site>

您只需要更改applicationPool(在这种情况下,您的经典应用程序池名称可能是diff,从同一文件中获取正确的名称)。 还要确保您正在更新正确的“站点”节点(从VS.Net调试时,您的Web应用程序的正确localhost URL)

如果仍有问题设置如下 -

<applicationDefaults applicationPool="Clr4IntegratedAppPool" />

希望这可以帮助。

您应该使用以下内容更改web.config:

<system.webServer>
<validation validateIntegratedModeConfiguration="false" /> 
</system.webServer>

暂无
暂无

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

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