IIS集成和经典配置
我们将ASP.NET程序从IIS6移植到IIS7,可能执行提示下面错误:
HTTP 错误 500.23 - Internal Server Error
检測到在集成的托管管道模式下不适用的 ASP.NET 设置。
为什么会出现以上错误?
在IIS7的应用程序池有两种模式。一种是“集成模式”。一种是“经典模式”。
经典模式 则是我们曾经习惯的IIS 6 的方式。
假设使用集成模式,那么对自己定义的httpModules 和 httpHandlers 就要改动配置文件。须要将他们转移到<modules>和<hanlders>节里去。
两种解决方法:
第一种方法:配置应用程序池
在IIS7上配置应用程序池。而且将程序池的模式改为“经典”,之后一切正常。如图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZWl0NTIw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
在搜索引擎输入上面提示的错误消息,搜索到的结果差点儿都是直接改为“经典”便浅尝辄止了。
但这样仅仅是权宜之计,用了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" />
这样能够禁止验证集成模式,避免错误提示。
经典模式(classic mode)VS 集成模式(Integrated mode)
在经典模式下,IIS会用ISAPI扩展(ISAPI extension aspnet_isapi.dll)和 ISAPI过滤器(ISAPI filter aspnet_filter.dll)来调用ASP.NET执行库来处理请求。假设使用经典模式的话,server会用两种管道来处理请求一个负责源码,另外一个负责托管代码。在这样的模式下,应用程序不能充分使用IIS7.X提供的服务。
在集成模式下。ASP.NET从IIS插件(IIS extension)的角色进入了IIS的核心去监測每一个请求和操作。在集成模式下,ASP.NET能更有效的在IIS下执行,而且能够有效的提高站点的性能。 有些在IIS6开发的代码须要执行于经典模式。由于在集成模式下会出现错误信息。
最新文章
- Oracle中将查询出的多条记录的某个字段拼接成一个字符串的方法
- vtk第一个程序
- 20145308刘昊阳 《Java程序设计》第3周学习总结
- 在线学习体验大PK 云智慧发布在线教育网站性能监测报告
- Json Null 不输出
- linux printk函数学习
- Lucene学习总结之四:Lucene索引过程分析
- python3 模拟登录网站
- Swift - 类的计算属性(使用get和set来间接获取/改变其他属性的值)
- nefu 1191 平行宇宙 (bfs)
- 每一个Servlet只有一个实例,多个线程
- SQL语句使用时间和日期的函数
- .9-Vue源码之AST(5)
- setState的参数接收函数
- 洛谷P1360 [USACO07MAR]黄金阵容均衡题解
- centos php 运行环境搭建
- 网络编程_UDP协议_聊天程序
- CF232C Doe Graphs
- (转)Xen Server删除Local Storage
- 【xsy1201】 随机游走 高斯消元
热门文章
- No mapping found for HTTP request with URI [/spring_liu/hello.do] in DispatcherServlet with name &#39;SpringMVC&#39;
- Ubuntu PPA 使用指南
- 图层Layers的介绍
- [HAOI2016]找相同字符(SAM+DP)
- unity 调用 .dll 或 .so时遇到的问题
- weblogic 生产模式和开发模式的互相转换
- 移植u-boot-2014.4到S5PV210/TQ210(完整)
- 更改linux文件的拥有者及用户组(chown和chgrp)
- CIKM 2013 Paper CQARank: Jointly Model Topics and Expertise in Community Question Answering
- Excel操作之VLOOKUP