我安装了DotNetOpenAuth SDK-3.4.5.10201。vsix,我不能让它工作。它在本地工作(当我作为localhost运行时),但当我尝试发布它不工作。

我得到的IIS错误消息是:

错误总结 HTTP错误500.22 -内部服务器错误 一个ASP。检测到在集成管理管道模式中不适用的NET设置。

and:

模块ConfigurationValidationModule 通知BeginRequest 处理程序StaticFile 错误码0x80070032

下面就如何解决这个问题给出一些建议:

Things you can try: Migrate the configuration to the system.webServer/modules section. You can do so manually or by using AppCmd from the command line - for example, %SystemRoot%\system32\inetsrv\appcmd migrate config "Default Web Site/". Using AppCmd to migrate your application will enable it to work in Integrated mode, and continue to work in Classic mode and on previous versions of IIS. If you are certain that it is OK to ignore this error, it can be disabled by setting system.webServer/validation@validateIntegratedModeConfiguration to false. Alternatively, switch the application to a Classic mode application pool - for example, %SystemRoot%\system32\inetsrv\appcmd set app "Default Web Site/" /applicationPool:"Classic .NET AppPool". Only do this if you are unable to migrate your application. (Set "Default Web Site" and "Classic .NET AppPool" to your application path and application pool name)

问题是我没有访问ISS服务器的权限,因为我不是它的所有者。有办法解决这个问题吗?


当前回答

我花了几个小时来解决这个问题,因为我在这里找到的关于这个错误的所有设置都是一样的,但它仍然不工作。 问题是我在我的web服务中有一个文件夹,文件应该从这个文件夹发送到WinCE设备,在将该文件夹转换为经典应用程序后。netappool开始工作了。

其他回答

我遇到了这个问题,受到@Jeremy Cook的回答的启发,我咬紧牙关,想知道到底是什么原因导致iis7集成模式不像我的web.config。以下是我的设想:

Web API(版本4.0.030506.0即旧版本) net 4.0 属性路由3.5.6为Web API[剧透警告:它是这个家伙!]

我想在一个必须使用. net 4的项目中使用属性路由(不幸的是),因此不能使用Web API 2.2(需要. net 4.5)。NuGet包善意地将此部分添加到<system。web >部分:

<system.web>
<httpHandlers>
      <add verb="*" path="routes.axd" type="AttributeRouting.Web.Logging.LogRoutesHandler, AttributeRouting.Web" />
    </httpHandlers>
</system.web>

[我说的是善意的,因为旧版本的IIS需要这部分]

删除这个部分让我通过了HTTP 500.23!!

简介: 我赞同杰里米的话,理解事情为什么不起作用而不仅仅是“掩盖症状”是很重要的。即使你必须掩盖症状,你也知道你在做什么(以及为什么):-)

检查您的IIS身份验证是否有冲突。即启用匿名认证和ASP。NET模拟也可能导致错误。

第二个选项是你想要的。

在你的网里。配置,确保这些键存在:

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

这招对我很管用:

删除原创建的站点。 在IIS中重新创建站点 清洁解决方案 构建解决方案

我刚创建这个网站的时候好像出了问题。我讨厌类似于“重新启动机器,然后重新安装窗口”的解决方案,而不知道是什么导致了错误。但是,这对我很有效。简单快捷。希望它能帮助到其他人。

在你的网里。配置确保这些键存在:

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

以及检查Asp。Net impression =在IIS站点认证中禁用