zoukankan      html  css  js  c++  java
  • 检测到在集成的托管管道模式下不适用的 ASP.NET 设置的解决方法

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

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

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

    转摘一篇文章:  

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

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

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

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

    具体的转换方式如下:

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

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

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

    使用集成模式,申请人可以带出来,因为使用了<system.webServer><handlers>节点进行HTTP处理程序的注册

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

  • 相关阅读:
    关于 " +new Date " 的个人见解
    利用text插件和css插件优化web应用
    gulp如何自定义插件
    NGINX实现域名跳转
    转:分享两个饼状图在线生成工具
    Windows下根据端口号查找进程并关闭【转载】
    树和二叉树
    学习表——受任于败军之际,奉命于危难之间(2.20--2.26)
    Incremental Method
    374. Guess Number Higher or Lower 简单的二分法运用
  • 原文地址:https://www.cnblogs.com/wanglg/p/3515765.html
Copyright © 2011-2022 走看看