영어로 읽기

다음을 통해 공유


모듈 <추가 요소 추가>

개요

<add> 요소의 <modules> 요소는 사용자가 사이트 또는 애플리케이션에 연결할 때 IIS 관리자에서 사용할 수 있는 기능 모듈의 컬렉션에 모듈을 추가합니다.

참고

이 모듈 컬렉션은 IIS 관리자와 관련이 있으며 HTTP 요청 처리에 영향을 주는 모듈을 정의하는 system.webServer/modules> 컬렉션과 <혼동해서는 안 됩니다.

참고

요소의 <modules> 설정은 관리istration.config 파일에서만 구성할 수 있습니다.

호환성

버전 주의
IIS 10.0 <add> IIS 10.0에서 요소가 수정되지 않았습니다.
IIS 8.5 <add> IIS 8.5에서 요소가 수정되지 않았습니다.
IIS 8.0 <add> IIS 8.0에서는 요소가 수정되지 않았습니다.
IIS 7.5 <add> IIS 7.5에서는 요소가 수정되지 않았습니다.
IIS 7.0 <add> 요소의 <modules> 요소는 IIS 7.0에서 도입되었습니다.
IIS 6.0 해당 없음

설정

<add> 요소의 <modules> 요소는 IIS 7의 기본 설치에 포함됩니다.

방법

IIS 7의 요소에 모듈을 추가하기 <modules> 위한 사용자 인터페이스가 없습니다. 프로그래밍 방식으로 요소에 모듈을 <modules> 추가하는 방법에 대한 예제는 이 문서의 코드 샘플 섹션을 참조하세요.

구성

특성

특성 설명
name 필수 문자열 특성입니다.

웹 서버에서 관리되는 모듈의 고유 이름을 지정합니다.

자식 요소

없음

구성 샘플

관리istration.config 파일에서 발췌한 다음 샘플 구성은 ContosoProvider라는 관리되는 모듈 공급자를 컬렉션의 <modules> 끝에 추가합니다.

참고

이 샘플 구성 발췌는 읽기 쉽기 위해 단축되었습니다.

<location path=".">
   <modules>
      <add name="Modules" />
      <add name="Handlers" />

      . . .
      . . .
      . . .

      <add name="ContosoProvider" />
   </modules>
</location>

관리istration.config 파일에서 발췌한 다음 샘플 구성은 기본 모듈 목록을 지우고 각 위치에 대해 각각 사용하도록 설정될 특정 모듈을 정의하는 고유 <location> 요소를 정의하여 기본 웹 사이트 및 자식 애플리케이션에 대한 사용자 지정 <modules> 요소를 지정합니다. 원격 관리가 두 위치에 연결되면 IIS 관리자는 각 <location> 요소에 나열된 모듈이 나타내는 기능만 표시합니다.

<location path="Default Web Site">
   <modules>
      <clear />
      <add name="DefaultDocument" />
      <add name="DirectoryBrowse" />
   </modules>
</location>

<location path="Default Web Site/ContosoApplication">
   <modules>
      <clear />
      <add name="DefaultDocument" />
      <add name="DirectoryBrowse" />
      <add name="Handlers" />
   </modules>
</location>

예제 코드

다음 코드 예제에서는 ContosoProvider라는 관리되는 모듈 공급자를 관리istration.config 파일의 전역 위치 수준으로 사용하도록 설정합니다.

Appcmd.exe

참고

AppCmd.exe 사용하여 설정을 구성할 <modules> 수 없습니다.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetAdministrationConfiguration();
         ConfigurationSection modulesSection = config.GetSection("modules");

         ConfigurationElementCollection modulesCollection = modulesSection.GetCollection();
         ConfigurationElement addElement = modulesCollection.CreateElement("add");
         addElement["name"] = @"ContosoProvider";
         modulesCollection.Add(addElement);

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetAdministrationConfiguration
      Dim modulesSection As ConfigurationSection = config.GetSection("modules")

      Dim modulesCollection As ConfigurationElementCollection = modulesSection.GetCollection
      Dim addElement As ConfigurationElement = modulesCollection.CreateElement("add")
      addElement("name") = "ContosoProvider"
      modulesCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject("Microsoft.ApplicationHost.WritableAdminManager"); 
adminManager.CommitPath = "MACHINE/WEBROOT"; 
adminManager.SetMetadata("pathMapper", "AdministrationConfig");
var modulesSection = adminManager.GetAdminSection("modules", "MACHINE/WEBROOT"); 

var modulesCollection = modulesSection.Collection;
var addElement = modulesCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "ContosoProvider";
modulesCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT"
adminManager.SetMetadata "pathMapper", "AdministrationConfig"
Set modulesSection = adminManager.GetAdminSection("modules", "MACHINE/WEBROOT")

Set modulesCollection = modulesSection.Collection
Set addElement = modulesCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "ContosoProvider"
modulesCollection.AddElement(addElement)

adminManager.CommitChanges()