集成模式

图片 5

大家将ASP.NET程序从IIS6移植到IIS7,或然运营提醒以下错误:

HTTP 错误 500.23 – Internal Server Error

检查测试到在合龙的托管管道格局下不适用的 ASP.NET 设置。

为啥会现身上述错误?

在IIS7的使用程序池有三种方式,生机勃勃种是“集成形式”,一种是“卓绝情势”。

杰出格局 则是我们原先习贯的IIS 6 的艺术。

若果选取集成情势,那么对自定义的httpModules 和 httpHandlers
将要更改配置文件,需求将她们转移到<modules>和<hanlders>节里去。

二种缓慢解决格局:

率先种办法、配置利用程序池

在IIS7上计划使用程序池,何况将程序池的形式改为“卓越”,之后一切正常。如图:

图片 1

在寻觅引擎输入下面提醒的荒唐音信,寻觅到的结果差不离都以一贯改为“杰出”便半途而返了。

但这样只是权宜之策,用了IIS7.x,但实则只表述了6的效率,别的,在部分ASP.NET
MVC程序中的效果也不佳,所以,我们尝试以下消除方法:

其次种方式、订正web.config配置文件:

例如原先安装(你的遭受中只怕没有httpModules,httpHandlers节点卡塔尔国

<system.web>

    ............

    <httpModules>
        <add name="MyModule" type="MyApp.MyModule" />
    </httpModules>
    <httpHandlers>
      <add path="*.myh" verb="GET" type="MyApp.MyHandler" />
    </httpHandlers>


</system.web>

 在IIS7应用程序池为“集成情势”时,改为:

<system.web>

    ...........

</system.web>

<system.webServer>

    <modules>
      <add name="MyModule" type="MyApp.MyModule" />      
    </modules>
    <handlers>
      <add name="MyHandler" path="*.myh" verb="GET" type="MyApp.MyHandler" preCondition="integratedMode" />
    </handlers>

</system.webServer>

 (即使您的web.config未有httpModules,httpHandlers节点,则直接在节点system.webServer中增添:

<validation validateIntegratedModeConfiguration="false" />  
禁止验证集成模式,来避免错误。

更多原理知识,请各位多多指点!

IIS7.0 检验到在合龙的托管管道形式下不适用的ASP.NET设置 的消除方式 (转)

 

指鹿为马截图:

图片 2

 

修正配置截图:

图片 3

改为杰出格局后,或然会合世了另一个破绽非常多。。。如下图:

 

 

图片 4

 

  那一个乖谬是说ISAPI禁止使用了有个别构件,因为.NET Framework
4.0才装上,恐怕被IIS默许禁绝运维,所以展开设置页面,果然,30个人和63位的ASP.NET
4.0组件都被装置为“不一样意”了。

 

 

 

 

 

图片 5

  把多少个ASP.NET V4.0的机件允许通过,网址就会不辱职务运维了!