HTTP 错误 500.22 - Internal Server Error
检测到在集成的托管管道模式下不适用的 ASP.NET 设置。
最可能的原因:
此应用程序在 system.web/httpModules 节中定义配置。
可尝试的操作:
将配置迁移到 system.webServer/modules 节。也可以手动这样做,或通过在命令行中使用 AppCmd 来这样做。例如,从 IIS Express 安装目录运行 appcmd migrate config "Default Web Site/"。使用 AppCmd 迁移应用程序将使它能够在集成模式下工作,并能继续在经典模式下和以前版本的 IIS 上工作。
如果您确信可以忽略此错误,则可以通过将 system.webServer/validation@validateIntegratedModeConfiguration 设置为 false 来禁用它。
也可以将应用程序切换到经典模式应用程序池。例如,从 IIS Express 安装目录运行 appcmd set app "Default Web Site/" /applicationPool:"Clr4ClassicAppPool"。只有在无法迁移应用程序时才这样做。
详细错误信息:
模块 | ConfigurationValidationModule |
---|---|
通知 | BeginRequest |
处理程序 | PageHandlerFactory-Integrated-4.0 |
错误代码 | 0x80070032 |
请求的 URL | http://localhost:2959/about.aspx |
---|---|
物理路径 | E:\**\**\**\about.aspx |
登录方法 | 尚未确定 |
登录用户 | 尚未确定 |
请求跟踪目录 | C:\Users\Administrator\Documents\IISExpress\TraceLogFiles\MYWEB.WEB |
更多信息:
集成模式是在 IIS 7.0 及更高版本上运行 ASP.NET 应用程序的首选模式。解决办法:
方法一:修改应用程序池托管管道模式至经典模式
方法二,修改web.config
<httpModules>
<add type="URLRewriter.RewriterModule, URLRewriter" name="RewriterModule"/></httpModules><httpHandlers></httpHandlers></system.web>修改为
<system.webServer>
<modules><add type="URLRewriter.RewriterModule, URLRewriter" name="RewriterModule"/></modules></system.webServer></configuration>