다음을 통해 공유


인터넷 정보 서비스(IIS) 7에 대한 Modules <add> 요소 추가;

개요

<add> 컬렉션의 <modules> 요소는 IIS(인터넷 정보 서비스) 7의 모듈 목록에 모듈을 추가합니다.

호환성

버전 주의
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의 기본 설치에 포함됩니다.

방법

애플리케이션에 관리되는 모듈을 추가하는 방법

  1. IIS(open 인터넷 정보 서비스) 관리자:

    • Windows Server 2012 또는 Windows Server 2012 R2를 사용하는 경우:

      • 작업 표시줄에서 서버 관리자 클릭하고 도구를 클릭한 다음 인터넷 정보 서비스(IIS) 관리자를 클릭합니다.
    • Windows 8 또는 Windows 8.1을 사용하는 경우:

      • Windows 키를 누른 상태로 문자 X를 누른 다음 제어판 클릭합니다.
      • 관리istrative Tools를 클릭한 다음 IIS(인터넷 정보 서비스) 관리자를 두 번 클릭합니다.
    • Windows Server 2008 또는 Windows Server 2008 R2를 사용하는 경우:

      • 작업 표시줄에서 시작을 클릭하고 관리영구 도구를 가리킨 다음 IIS(인터넷 정보 서비스) 관리자를 클릭합니다.
    • Windows Vista 또는 Windows 7을 사용하는 경우:

      • 작업 표시줄에서 시작을 클릭한 다음 제어판 클릭합니다.
      • 관리istrative Tools를 두 번 클릭한 다음 IIS(인터넷 정보 서비스) 관리자를 두 번 클릭합니다.
  2. 커넥트 창에서 서버 이름을 확장하고 사이트를 확장한 다음 관리되는 모듈을 추가할 웹 사이트 또는 애플리케이션으로 이동합니다.

  3. 창에서 모듈을 두 번 클릭합니다.
    모듈이 강조 표시된 홈 창의 스크린샷

  4. 작업 창에서 관리되는 모듈 추가를 클릭합니다.

  5. 관리되는 모듈 추가 대화 상자의 이름 상자에 관리되는 모듈의 이름을 입력한 다음 형식 상자에 모듈의 .NET Framework 정규화된 형식을 입력하거나 선택합니다.

  6. 모듈이 관리되는 요청에만 응답하도록 하려면 ASP.NET 애플리케이션 또는 관리되는 처리기 옵션에 대한 요청에 대해서만 호출을 선택합니다.
    S P dot Net 애플리케이션 또는 관리되는 처리기 옵션에 대한 요청에 대해서만 호출이 있는 이름 및 형식 상자를 보여 주는 관리되는 모듈 추가 대화 상자의 이미지.

  7. 확인을 클릭합니다.

구성

특성

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

웹 서버에서 관리되는 모듈의 고유 이름을 지정합니다.
preCondition 선택적 문자열 특성입니다. 모듈이 실행되는 조건을 지정합니다.

preCondition 특성은 다음 가능한 값 중 하나 이상이 될 수 있습니다. 둘 이상의 값을 지정하는 경우 값을 쉼표(,)로 구분합니다.

설명
bitness32 모듈이 32 비트 .dll 파일인 경우 bitness32 값을 지정합니다. IIS는 64비트 운영 체제에서 WOW64 모드(32비트 시뮬레이션)로 실행되는 작업자 프로세스에 대해서만 처리기를 로드해야 합니다.
bitness64 모듈이 64 비트 .dll 파일인 경우 bitness64 값을 지정합니다. IIS는 64비트 모드에서 실행되는 작업자 프로세스에 대해서만 처리기를 로드해야 합니다.
integratedMode 통합 요청 처리 파이프라인을 사용하도록 구성된 애플리케이션 풀의 요청에만 모듈이 응답해야 하는 경우 integratedMode 값을 지정합니다.
ISAPIMode 모듈이 클래식 모드를 사용하도록 구성된 애플리케이션 풀의 요청에만 응답해야 하는 경우 ISAPIMode 값을 지정합니다.
managedHandler 모듈이 .aspx 파일과 같은 관리되는 리소스에 대한 요청만 처리하고 .html 파일과 같이 관리되지 않는 리소스에 대한 요청에 응답하지 않아야 하는 경우 managedHandler 값을 지정합니다.
runtimeVersionv1.1 모듈이 .NET Framework 버전 1.1을 사용하도록 구성된 애플리케이션 풀의 요청에만 응답해야 하는 경우 runtimeVersionv1.1 값을 지정합니다.
runtimeVersionv2.0 모듈이 .NET Framework 버전 2.0을 사용하도록 구성된 애플리케이션 풀의 요청에만 응답해야 하는 경우 runtimeVersionv2.0 값을 지정합니다.
runtimeVersionv4.0 모듈이 .NET Framework 버전 4.0을 사용하도록 구성된 애플리케이션 풀의 요청에만 응답해야 하는 경우 runtimeVersionv4.0 값을 지정합니다.
type 선택적 문자열 특성입니다.

관리되는 모듈의 관리되는 형식을 지정합니다. 형식 특성은 네이티브 모듈에 적용되지 않습니다.

자식 요소

없음

구성 샘플

이 예제에서는 IIS 7 통합 모드에서 실행되는 웹 애플리케이션에 대한 모듈을 구성합니다.

<configuration>
   <system.webServer>
      <modules>
         <add name="Header" type="Contoso.ShoppingCart.Header"/>
      </modules>
   </system.webServer>
</configuration>

예제 코드

참고 항목

이 문서의 예제에서는 .NET GAC(전역 어셈블리 캐시)에 저장된 관리 코드 어셈블리를 사용하는 방법을 보여 줍니다. 이러한 예제의 코드를 사용하여 사용자 고유의 어셈블리를 배포하기 전에 GAC에서 어셈블리 정보를 검색해야 합니다. 이렇게 하려면 다음 단계를 수행합니다.

  • Windows 탐색기에서 C:\Windows\assembly 경로를 엽니다. 여기서 C: 운영 체제 드라이브입니다.
  • 어셈블리를 찾습니다.
  • 어셈블리를 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.
  • 문화권 값을 복사합니다(예: 중립).
  • 버전 번호(예: 1.0.0.0)를 복사합니다.
  • 공개 키 토큰 값을 복사합니다(예: 426f62526f636b73).
  • 취소를 클릭합니다.

다음 코드 예제에서는 Contoso라는 웹 사이트에 대해 관리되는 모듈을 사용하도록 설정합니다. 이름 속성은 모듈의 이름 CartHeader를 정의하고, type 속성은 모듈의 관리되는 형식을 정의하고, preCondition 속성은 IIS가 관리되는 요청에 대해서만 모듈을 호출하는 것을 정의합니다.

Appcmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/modules /+"[name='CartHeader',type='Contoso.ShoppingCart.Header',preCondition='managedHandler']"

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.GetWebConfiguration("Contoso");
         ConfigurationSection modulesSection = config.GetSection("system.webServer/modules");
         ConfigurationElementCollection modulesCollection = modulesSection.GetCollection();

         ConfigurationElement addElement = modulesCollection.CreateElement("add");
         addElement["name"] = @"CartHeader";
         addElement["type"] = @"Contoso.ShoppingCart.Header";
         addElement["preCondition"] = @"managedHandler";
         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.GetWebConfiguration("Contoso")
      Dim modulesSection As ConfigurationSection = config.GetSection("system.webServer/modules")
      Dim modulesCollection As ConfigurationElementCollection = modulesSection.GetCollection

      Dim addElement As ConfigurationElement = modulesCollection.CreateElement("add")
      addElement("name") = "CartHeader"
      addElement("type") = "Contoso.ShoppingCart.Header"
      addElement("preCondition") = "managedHandler"
      modulesCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso";
var modulesSection = adminManager.GetAdminSection("system.webServer/modules", "MACHINE/WEBROOT/APPHOST/Contoso");
var modulesCollection = modulesSection.Collection;

var addElement = modulesCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "CartHeader";
addElement.Properties.Item("type").Value = "Contoso.ShoppingCart.Header";
addElement.Properties.Item("preCondition").Value = "managedHandler";
modulesCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso"
Set modulesSection = adminManager.GetAdminSection("system.webServer/modules", "MACHINE/WEBROOT/APPHOST/Contoso")
Set modulesCollection = modulesSection.Collection

Set addElement = modulesCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "CartHeader"
addElement.Properties.Item("type").Value = "Contoso.ShoppingCart.Header"
addElement.Properties.Item("preCondition").Value = "managedHandler"
modulesCollection.AddElement addElement

adminManager.CommitChanges()