애플리케이션 풀 기본값 applicationPoolDefaults <>
개요
컬렉션 컬렉션은 <applicationPoolDefaults>
웹 서버의 <applicationPools>
모든 애플리케이션 풀에 대한 기본값을 구성합니다.
참고
컬렉션에 <applicationPoolDefaults>
명시적으로 정의되지 않은 모든 기본값은 여전히 IIS 7 이상 스키마의 기본값을 상속하며 개별 애플리케이션 풀 설정은 기본값을 재정의합니다.
호환성
버전 | 참고 |
---|---|
IIS 10.0 | <applicationInitialization> 요소가 IIS 10.0에서 수정되지 않았습니다. |
IIS 8.5 | <applicationInitialization> 요소가 IIS 8.5에서 수정되지 않았습니다. |
IIS 8.0 | 다른 값("v4.0")이 IIS 8.0의 특성에 추가 managedRuntimeVersion 되었으며 기본값은 "v2.0" 대신 ""로 변경되었습니다. |
IIS 7.5 | <applicationPoolDefaults> 요소가 IIS 7.5에서 수정되지 않았습니다. |
IIS 7.0 | 요소는 <applicationPoolDefaults> IIS 7.0에서 도입되었습니다. |
IIS 6.0 | 요소는 <applicationPoolDefaults> IIS 6.0 IIsApplicationPools 메타베이스 속성의 일부를 대체합니다. |
설치 프로그램
컬렉션은 <applicationPools>
IIS 7 이상의 기본 설치에 포함되어 있습니다.
방법
애플리케이션 풀 기본값을 설정하는 방법
IIS(인터넷 정보 서비스) 관리자를 엽니다.
Windows Server 2012 또는 Windows Server 2012 R2를 사용하는 경우:
- 작업 표시줄에서 서버 관리자 클릭하고 도구를 클릭한 다음 IIS(인터넷 정보 서비스) 관리자를 클릭합니다.
Windows 8 또는 Windows 8.1 사용하는 경우:
- Windows 키를 누른 채로 문자 X를 누른 다음 제어판 클릭합니다.
- 관리 도구를 클릭한 다음 IIS(인터넷 정보 서비스) 관리자를 두 번 클릭합니다.
Windows Server 2008 또는 Windows Server 2008 R2를 사용하는 경우:
- 작업 표시줄에서 시작을 클릭하고 관리 도구를 가리킨 다음 IIS(인터넷 정보 서비스) 관리자를 클릭합니다.
Windows Vista 또는 Windows 7을 사용하는 경우:
- 작업 표시줄에서 시작을 클릭한 다음 제어판 클릭합니다.
- 관리 도구를 두 번 클릭한 다음 IIS(인터넷 정보 서비스) 관리자를 두 번 클릭합니다.
연결 창에서 서버 이름을 확장한 다음 애플리케이션 풀을 클릭합니다.
설정 지정을 마쳤으면 확인을 클릭합니다.
구성
특성
attribute | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
autoStart |
선택적 부울 특성입니다. true이면 W3SVC(World Wide Web Publishing Service)에 애플리케이션 풀을 만들 때 또는 IIS가 시작될 때 자동으로 시작되어야 했음을 나타냅니다. 기본값은 true 입니다. |
||||||||
CLRConfigFile |
선택적 문자열 값입니다. 애플리케이션 풀에 대한 .NET 구성 파일을 지정합니다. 참고: 이 특성은 IIS 7.5에 추가되었습니다. 기본값은 없습니다. |
||||||||
enable32BitAppOnWin64 |
선택적 부울 특성입니다. true이면 64비트 버전의 Windows를 실행하는 컴퓨터에서 32비트 애플리케이션을 실행할 수 있습니다. 기본값은 false 입니다. |
||||||||
managedPipelineMode |
선택적 열거형 특성입니다. 관리되는 콘텐츠에 대한 요청을 처리하는 데 사용되는 요청 처리 모드를 지정합니다. managedPipelineMode 특성은 다음과 같은 가능한 값 중 하나일 수 있습니다. 기본값은 입니다 Integrated .
|
||||||||
managedRuntimeLoader |
선택적 문자열 특성입니다. 애플리케이션 풀을 미리 로드하는 데 사용할 관리되는 로더를 지정합니다. 참고: 이 특성은 IIS 7.5에 추가되었습니다. 기본값은 webengine4.dll. |
||||||||
managedRuntimeVersion |
선택적 문자열 특성입니다. 애플리케이션 풀에서 사용할 .NET Framework 버전을 지정합니다. managedRuntimeVersion 특성은 다음과 같은 가능한 값 중 하나일 수 있습니다. 기본값은 입니다 "" .
|
||||||||
name |
필수 문자열 특성입니다. 서버의 애플리케이션 풀에 대한 고유한 이름을 지정합니다. |
||||||||
queueLength |
선택적 uint 특성입니다. 향후 요청을 거부하기 전에 애플리케이션 풀에 대해 큐에 대기할 요청 수를 HTTP.sys 나타냅니다. 이 속성에 대해 설정된 값을 초과하면 IIS는 503 오류와 함께 후속 요청을 거부합니다. loadBalancerCapabilities 설정이 true이면 503이 있는 요청을 거부하는 대신 연결이 닫힙니다. loadBalancerCapabilities에 대한 자세한 내용은 애플리케이션 풀에 대한 오류 설정을 참조하세요. 기본값은 1000 입니다. |
||||||||
startMode |
선택적 열거형 값입니다. 애플리케이션 풀의 시작 유형을 지정합니다. 참고: 이 특성은 IIS 7.5에 추가되었습니다. startMode 특성은 다음과 같은 가능한 값 중 하나일 수 있습니다. 기본값은 입니다 OnDemand .
|
자식 요소
요소 | Description |
---|---|
cpu |
CPU 선호도 및 CPU 작업을 구성합니다. |
environmentVariables |
작업자 프로세스에 전달할 환경 변수 컬렉션을 구성합니다. |
failure |
애플리케이션 풀이 실패할 때 수행할 작업을 구성합니다. |
processModel |
애플리케이션 풀에 대한 프로세스 관리 특성을 구성합니다. |
recycling |
애플리케이션 풀 재활용을 구성합니다. |
구성 샘플
다음 구성 샘플은 모든 애플리케이션 풀의 기본 ID를 기본 제공 애플리케이션 풀 ID로 지정하고 200을 애플리케이션 풀이 재활용된 후의 기본 요청 수로 지정합니다.
<applicationPools>
<add name="DefaultAppPool" />
<applicationPoolDefaults>
<processModel identityType="ApplicationPoolIdentity" />
<recycling>
<periodicRestart requests="200" />
</recycling>
</applicationPoolDefaults>
</applicationPools>
샘플 코드
다음 예제에서는 애플리케이션 풀이 자동으로 시작되고, .NET 환경의 버전 2.0을 사용하고, 기본적으로 통합 파이프라인을 사용하도록 구성합니다.
AppCmd.exe
appcmd.exe set config -section:system.applicationHost/applicationPools /applicationPoolDefaults.autoStart:"True" /commit:apphost
appcmd.exe set config -section:system.applicationHost/applicationPools /applicationPoolDefaults.managedRuntimeVersion:"v2.0" /commit:apphost
appcmd.exe set config -section:system.applicationHost/applicationPools /applicationPoolDefaults.managedPipelineMode:"Integrated" /commit:apphost
참고
AppCmd.exe 사용하여 이러한 설정을 구성할 때 커밋 매개 변수 apphost
를 로 설정해야 합니다. 그러면 구성 설정이 ApplicationHost.config 파일의 적절한 위치 섹션에 커밋됩니다.
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.GetApplicationHostConfiguration();
ConfigurationSection applicationPoolsSection = config.GetSection("system.applicationHost/applicationPools");
ConfigurationElement applicationPoolDefaultsElement = applicationPoolsSection.GetChildElement("applicationPoolDefaults");
applicationPoolDefaultsElement["autoStart"] = true;
applicationPoolDefaultsElement["managedRuntimeVersion"] = @"v2.0";
applicationPoolDefaultsElement["managedPipelineMode"] = @"Integrated";
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Class Sample
Shared Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim applicationPoolsSection As ConfigurationSection = config.GetSection("system.applicationHost/applicationPools")
Dim applicationPoolDefaultsElement As ConfigurationElement = applicationPoolsSection.GetChildElement("applicationPoolDefaults")
applicationPoolDefaultsElement("autoStart") = True
applicationPoolDefaultsElement("managedRuntimeVersion") = "v2.0"
applicationPoolDefaultsElement("managedPipelineMode") = "Integrated"
serverManager.CommitChanges()
End Sub
End Class
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var applicationPoolsSection = adminManager.GetAdminSection("system.applicationHost/applicationPools", "MACHINE/WEBROOT/APPHOST");
var applicationPoolDefaultsElement = applicationPoolsSection.ChildElements.Item("applicationPoolDefaults");
applicationPoolDefaultsElement.Properties.Item("autoStart").Value = true;
applicationPoolDefaultsElement.Properties.Item("managedRuntimeVersion").Value = "v2.0";
applicationPoolDefaultsElement.Properties.Item("managedPipelineMode").Value = "Integrated";
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set applicationPoolsSection = adminManager.GetAdminSection("system.applicationHost/applicationPools", "MACHINE/WEBROOT/APPHOST")
Set applicationPoolDefaultsElement = applicationPoolsSection.ChildElements.Item("applicationPoolDefaults")
applicationPoolDefaultsElement.Properties.Item("autoStart").Value = True
applicationPoolDefaultsElement.Properties.Item("managedRuntimeVersion").Value = "v2.0"
applicationPoolDefaultsElement.Properties.Item("managedPipelineMode").Value = "Integrated"
adminManager.CommitChanges()