appcmd.exe #1

2013.03.07 23:57

안녕하세요. 김도명입니다.

이번 포스팅에서는 IIS 7.0 이상에서 제공되는 명령줄 관리 도구인 AppCmd.exe에 대해서 알아보도록 하겠습니다.

아래와 같이 IIS Manager를 사용하는 방법 외에 AppCmd.exe를 이용하면 명령어를 이용한 IIS의 관리가 가능합니다.

 

IIS Manager로는 불가능한 일부 설정 등을 지원하는 것 외에도 명령어를 통해 IIS를 관리할 수 있다는 것은 여러모로 유용한데요.

예를 들어, bat 파일 등을 통해 여러 서버의 IIS 설정을 동일하게 구성 & 관리한다던가 Windows Azure 등과 같은 클라우드 환경에서 IIS의 설정을 유지하기 위해서도 사용할 수 있습니다. (Startup Task)

 

AppCmd.exe는  %systemroot%\system32\inetsrv\ 경로에 위치하게 됩니다.

 

 

AppCmd 명령어를 사용하기 위해선 우선, CMD 창을 관리자 권한으로 실행시키고 AppCmd.exe가 존재하는 위치로 이동합니다.
(cd %systemroot%\system32\inetsrv\)

그 다음 appcmd /? 명령어를 실행하여 도움말을 확인할 수 있습니다. 

 

C:\Windows\System32\inetsrv>APPCMD /?

General purpose IIS command line administration tool.

 

APPCMD (command) (object-type) <identifier> </parameter1:value1 ...>

 

Supported object types:

 

  SITE      Administration of virtual sites

  APP       Administration of applications

  VDIR      Administration of virtual directories

  APPPOOL   Administration of application pools

  CONFIG    Administration of general configuration sections

  WP        Administration of worker processes

  REQUEST   Administration of HTTP requests

  MODULE    Administration of server modules

  BACKUP    Administration of server configuration backups

  TRACE     Working with failed request trace logs

 

(To list commands supported by each object use /?, e.g. 'appcmd.exe site /?')

 

General parameters:

 

/?               Display context-sensitive help message.

 

/text<:value>    Generate output in text format (default).

                 /text:* shows all object properties in detail view.

                 /text:<attribute> shows the value of the specified

                 attribute for each object.

/xml             Generate output in XML format.

                 Use this to produce output that can be sent to another

                 command running in /in mode.

/in or -         Read and operate on XML input from standard input.

                 Use this to operate on input produced by another

                 command running in /xml mode.

/config<:*>      Show configuration for displayed objects.

                 /config:* also includes inherited configuration.

/metadata        Show configuration metadata when displaying configuration.

 

/commit          Set config path where configuration changes are saved.

                 Can specify either a specific configuration path, "site",

                 "app", "parent", or "url" to save to the appropriate portion

                 of the path being edited by the command, "apphost", "webroot",

                 or "machine" for the corresponding configuration level.

/apphostconfig   Specify an alternate applicationHost.config file to edit.

/debug           Show debugging information for command execution.

 

Use "!" to escape parameters that have same names as the general parameters,

like "/!debug:value" to set a config property named "debug".

 

 

 

다음은 AppCmd 명령어를 통한 각종 예시입니다.

APPCMD list sites

아래 결과와 같이 해당 서버의 IIS 내에 존재하는 모든 사이트 정보를 나열합니다.  

SITE "Default Web Site" (id:1,bindings:HTTP/*:80:,state:Started)
SITE "Site1" (id:2,bindings:http/*:81:,state:Started)
SITE "Site2" (id:3,bindings:http/*:82:,state:Stopped)

 

APPCMD list site "Default Web Site"

특정 사이트를 지정하여 조회. 

 

APPCMD list sites /serverAutoStart:false /state:Stopped

자동시작 옵션이 false로 설정되어 있고 중지되어있는 상태의 사이트를 조회

 

APPCMD add site /name:NewSite /bindings:"http/*:8080:" /physicalPath:"C:\NewSite"

8080 포트를 사용하는 'NewSite'라는 이름의 사이트를 생성하고 해당 사이트의 경로를 지정. 

 

APPCMD set site "NewSite" /id:100

NewSite의 아이디를 100으로 지정 

 

APPCMD delete site "NewSite"

NewSite를 삭제 

 

APPCMD list apps /site.name:"Default Web Site"

Default Web Site 하위의 모든 웹 응용 프로그램을 조회

 

APPCMD list apppools

모든 응용 프로그램 풀을 조회 

 

APPCMD add app /site.name:"Default Web Site" /path:"/NewApp" /physicalPath:"C:\NewApp"

Default Web Site의 하위 '/NewApp' 경로에 실제 폴더 경로를 'C:\NewApp'로 하는 웹 응용 프로그램 추가 

 

APPCMD add apppool /name:NewPool

NewPool이라는 이름의 응용프로그램 풀 추가 

 

<참고>

http://www.iis.net/learn/get-started/getting-started-with-iis/getting-started-with-appcmdexe

http://support.microsoft.com/kb/930909/

 

감사합니다.

저작자 표시 비영리 변경 금지
신고
Posted by kdmsong

BLOG main image
http://SharePointSchool.net by kdmsong

분류 전체보기 (262)
SharePoint 2013 (1)
SharePoint 2010 (224)
MOSS 2007 (3)
SharePoint 세미나 (9)
Windows Azure (7)
IIS 6.0 ~ 8.0 (8)
개발자 기본 소양 (10)
Etc. (0)
Total : 395,614
Today : 61 Yesterday : 136
Statistics Graph

free counters