CLASSIC VS INTERGRATED IN IIS 7.0

Classic mode (the only mode in IIS6 and below) is a mode where IIS only works with ISAPI extensions and ISAPI filters directly. In fact, in this mode, ASP.NET is just an ISAPI extension (aspnet_isapi.dll) and an ISAPI filter (aspnet_filter.dll). IIS just treats ASP.NET as an external plugin implemented in ISAPI and works with it like a black box (and only when it's needs to give out the request to ASP.NET). In this mode, ASP.NET is not much different from PHP or other technologies for IIS.

经典模式是IIS6.0以及以下版本的唯一工作模式(只工作在ISAPI EXTENSION,ISAPI FILTERS下)。在此种模式下asp.net只是一个分别实现了ISAPI EXTENSION和ISAPI FILTER的插件(aspnet_isapi.dll,aspnet_filter.dll),iis的工作只是将特定的请求转发给ASP.NET, 与PHP等等寄宿在IIS中的插件别无二致。

 

Integrated mode, on the other hand, is a new mode in IIS7 where IIS pipeline is tightly integrated (i.e. is just the same) as ASP.NET request pipeline. ASP.NET can see every request it wants to and manipulate things along the way. ASP.NET is no longer treated as an external plugin. It's completely blended and integrated in IIS. In this mode, ASP.NET HttpModules basically have nearly as much power as an ISAPI filter would have had and ASP.NET HttpHandlers can have nearly equivalent capability as an ISAPI extension could have. In this mode, ASP.NET is basically a part of IIS.

然而在集成模式里,IIS的管道与ASP.NET的请求管道是紧密集成的,ASP.NET可以完全控制,访问整个请求管道。ASP.NET不在作为一个外部插件,而是完全集成在IIS中。在此模式下,ASP.NET HTTPMODULE与ISAPI FILTER拥有等同的控制权,ASP.NET HTTPHANDLER与ISAPI EXTENSION拥有等同控制权,换而言之ASP.NET已经是IIS的一部分了。

原文地址:https://www.cnblogs.com/philzhou/p/3490371.html