IIS 7.0 supports two pipe modes: One is the latest integrated pipeline mode provided by IIS 7.0, and the other is classic pipe mode, which is provided by previous versions of IIS. We can set the pipeline mode through the application pool, which is especially useful for IIS administrators because it allows one server to run only one mode, or two modes to run on a single server at the same time. There is a significant difference between the Web. config files used by the two pipeline modes, and many Web. config files that work correctly in classic pipe mode do not work correctly in integrated pipeline mode. With AppCmd.exe, we can automatically convert the profile format in classic pipe mode to the configuration file format in integrated piping mode. It is necessary to look at the structure of the various patterns first, and to study the differences between the two modes. 1. Classic mode in IIS 6.0 in Classic mode, ASP. NET is an ISAPI that is added to IIS. IIS 7.0 supports this mode for backwards compatibility. However, Classic mode lacks the features that many integration modes can provide. In Classic mode, IIS has its own pipeline, which can be augmented by creating an ISAPI extension, which is notoriously difficult to develop. Asp. NET runs as an ISAPI extension, just an integral part of the IIS pipeline. This is a good explanation for the situation. Note that in this case, ASP. NET seems like an afterthought, and only works when IIS handles ISAPI extensions. You can determine which ISAPI handler to use by using the file name extension. For example, you can map files with the extension. aspx and. ascx to Aspnet_ Isapi.dll; and map files with an. asp extension to Asp.dll so that you can work with traditional ASP pages, and map files with a. php extension to Php.dll so that you can work with PHP pages, provided that you have installed Php.dll. Additionally, in the Classic mode of IIS 6.0 and IIS 7.0, some features are duplicated. For example, error handling is a repeating feature because IIS can handle non-ASP. NET pages, and ASP. NET can handle all the pages that map handlers to aspnet_isapi.dll. In IIS 6.0, we can map all file types to ASP., but there are some limitations. The biggest limitation is how to handle the default document: A default document can be processed only if it is specified as the default document in Global.asax or in an HTTP module. Some custom configurations require that all files be processed using Aspnet_isapi.dllType. IIS 7.0 can easily solve this problem. Classic mode allows you to run an existing Web site without modifying the Web. config, so if you are using an IIS 6.0 server, including an IIS 7.0 server, Or, for some reason, the Web. config file cannot be converted to a Web. config file that follows the new syntax, so you can use Classic mode. 2. Integrated mode leverages the integrated mode to make ASP. NET an integral part of IIS. The functionality of the IIS server is now divided into more than 40 modules, thus dividing the functionality of IIS and ASP into different components. Modules such as StaticFileModule, Basicauthenticationmodule, FormsAuthentication, Session, profile, and rolemanager are all part of the IIS pipeline. Note that formsauthentication, Session, profile, and rolemanager are part of the original ASP, and are not related to IIS. The IIS pipeline is interpreted using a module. These modules, which were originally part of ASP., are now an integral part of the IIS pipeline. The IIS pipeline provides more than 20 events that developers can use to extend the functionality of the Web server. In fact, we can replace modules in IIS 7.0 with custom modules by creating custom modules, updating applicationhost.config at the same time, using only custom modules, without using the built-in modules provided by Microsoft. 3. Differences in configuration between two modes IIS 7.0 has made some modifications to the configuration file that Web developers can use to modify the content. For example,,<system.webserver> section is such a modification, whether it is the Classic mode or Integrated mode can recognize the <system.webServer> section, while,<system.webserver> Sections can be set in either the ApplicationHost.config file or in the Web. config file. The <system.webServer> section can control both static and dynamic pages. Even in Classic mode, the,<system.webserver> section also plays an important role in helping Web developers set up different IIS configurations in the. config file. In integrated mode, HTTP modules and HTTP handlers are no longer defined in <system.Web>, but is defined in <system.webServer>. If you run a Web. config file that includes an HTTP module or an HTTP handler in Integrated mode, the invalidation will occur. Fortunately, Microsoft has detailed a 500.22 error message that explains how to migrate the Web. config file step-by-step. Configuration <system.webServer> node issues in IIS 7.5 in IIS7.5 Configuration <customError><error> node 404 page does not work analysis <system.web The > node is the primary configuration node of the previous version of iis7.0, and after II7.0 IIS pipeline processing is integrated with ASP. ASP. NET processing performance is improved. Since the program runs in IIS7.5 Integrated mode, it needs to be configured in the <system.webServer> node, adding new <system.webServer> What modifications need to be made in the node to be fully effective in the IIS7 integration mode, mainly including the following aspects: (1) <modules>-----equivalent to <system.web>
IIS 7 managed Pipeline Mode Classic mode (classical) Integrated mode (Integrated) analysis and understanding