检测到在集成的托管管道模式下不适用的 ASP.NET 设置的解决方法

     在将应用程序从经典模式迁移到集成模式时,能够保留经典模式下的自定义模块和处理程序注册,也能够将这些注册移除。若是不移除经典模式下使用的 httpModules 和 httpHandlers 注册,则必须将 validation 元素的 validateIntegratedModeConfiguration 属性设置为 false 以免错误。若是保留自定义模块,添加如下代码:程序员

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

 

若是仅仅是将集成模式改为经典模式,那么就是治标不治本了。windows

 

转摘一篇文章:  服务器

关于ESPS和SCSJ在Windows server 2008的问题总结server

SCSJ出现的问题在于集成模式和经典模式的选择上,系统自己是没有问题的。咱们在部署系统的时候,选择了集成模式,致使WebConfig的HttpHandlers节点没法访问。部署

在集成模式中,HTTP模块和HTTP处理程序再也不定义于<system.web>中,而定义于<system.webServer>中。若是在集成模式中运行一个包括了HTTP模块或HTTP处理程序的web.config文件,那么将会发生失效。io

由于集成模式下,要想运行HTTP处理程序,必须在配置文件中添加一个<system.webServer>\<handlers>节点代替经典模式下的<system.web>\<httpHandler>节点。进行这种转换后,程序HTTP处理程序成功执行。配置

具体的转换方式以下:date

在经典模式中,HTTP处理程序注册方式是添加一个<system.web>\<httpHandler>节点:程序

 

在集成模式中,HTTP处理程序注册方式是添加一个<system.webServer>\<handlers>节点:

 

使用集成模式,申请人姓名没法带出来,除非改为经典模式。

 

使用集成模式,申请人能够带出来,由于使用了<system.webServer>\<handlers>节点进行HTTP处理程序的注册

 

 

结论:本人以为很是遗憾,两个系统之因此出错,其实都与程序无关,而与服务器的部署有关,关于这个问题的责任,其实也是程序员和系统管理员共同的责任。首先程序员不懂得windows server 2008的部署,不一样的系统,不一样的程序,其部署的选项随程序的写法而有所不一样,咱们不能怪系统管理员,由于系统管理员对系统的程序是不清楚的,因此咱们不能祈求系统管理员可以帮咱们部署成功。因此做为程序员,咱们对系统的部署是要很是清楚的。

相关文章
相关标签/搜索