Introduction
The IIS 7 and above Web server feature set is componentized into more than thirty independent modules.
A module is either a Win32 DLL (native module) or a .NET 2.0 type contained within an assembly (managed module).
Similar to a set of building blocks, modules are added to the server in order to provide the desired functionality for your applications.
Likewise, all IIS modules can be removed, or replaced with custom modules developed using the IIS C++ APIs, or the familiar ASP.NET 2.0 APIs.
This article describes common IIS module management tasks,
and details each module including its configuration settings and the potential effect a module removal has on the Web server.
The management examples are given using both the graphical IIS Manager and the AppCmd command line tool.
Prerequisites
首先要安装IIS
Getting Started with Modules
In order to add a module to the server, you must perform two steps:
- Install a module on the server (native modules only).
- Enable the module in an application.
The first step registers the module globally with the server, making it available within each server worker process.
It is necessary only for native modules due to the trusted nature of native code, and is available only to administrators.
Note:
A native module has unrestricted access to any resource available to the server worker process, just like an ISAPI filter or extension in previous versions.
Because of this unrestricted access, you should install only native modules that come from a trusted source.
The second step enables the module to execute within a particular application and effectively allows the application administrator to control the server features enabled for the application.
This step allows both installed native modules and managed modules to be enabled for each application.
To Install a Native Module
In order to install a native module, it must be registered with the server using one of the options below:
- Manually editing the IIS configuration store. In IIS 7.5 and later you can use the Configuration Editor in the IIS Manager.
- Using the IIS Manager
- Using the AppCmd.exe command line tool
All three of these options result in the module entry being added to the <globalModules> IIS configuration section, which can be set only at the server level.
To examine the contents of this section, open the root configuration file located in %windir%\system32\inetsrv\config\applicationhost.config
, and search for the string "<globalModules>".
After a full IIS installation, this section contains an entry for each of the native modules shipped with IIS, specifying a name and the path to the module DLL:
<globalModules> <addname="DefaultDocumentModule"image="%windir%\system32\inetsrv\defdoc.dll"/> <addname="DirectoryListingModule"image="%windir%\system32\inetsrv\dirlist.dll"/> <add name="StaticFileModule"image="%windir%\system32\inetsrv\static.dll"/> ... </globalModules>
All of these modules are described in detail later in this document.
在IIS Manager中,按照如下步骤可以找到对应的Modules
1.打开IIS,在Features View中,找到Management,然后打开Configuration Editor
2.在Configuration Editor中,点击Search
3.输入globalModules进行搜索
3.1搜索页面,有两种视图,默认为Hierarchy View,直接显示出所有的config文件
FlatView,直接列出config文件,看起来比较直观,一下子就看到有几个文件
4.在第三步定位到globalModules的位置后,关闭搜索界面
5.在Configuration Editor下的Section中找到globalModules
6.在显示出来的Collection上的空白处点击一下,右侧出现浏览按钮。最右侧还有一个EditItems的按钮
7.找到对应的Module就可以进行remove
8.左侧的导航栏,可以选中Site处理Site的config;处理Application的config,需要单独选中Application,然后再选择Config Editor