2014. 4. 16. 13:58
Webapp deploy in tomcat 7.0
webapp을 deploy 하는 3가지 방법에 대하여 기술하겠습니다.
- server.xml
- 위치 : $TOMCAT_PATH/conf/server.xml
- server.xml 구조
<Servers>
<Service>
<Engine>
<Host>
//이부분에 Context를 넣어주면됩니다.
<Context> - <context> 예시
<Context docBase="test" path="/test" reloadable="true" source="org.eclipse.jst.jee.server:test"/>
- 참고사항
- tomcat에서 context는 web aplication을 의미합니다.
- server.xml에 context를 기술하여 사용하는(위와 같은방식)것은 지향하는 추세입니다. server.xml은 tomcat server자체에 대한 설정파일 임에도 불구하고, web context에대하여 설정한다는 것은 목적에 맞지 않기 때문입니다.
- descriptor file(확장자 .xml)
- context를 따로 파일로 관리하는 방식입니다.
- 관리방식
- $TOMCAT_PATH/conf/[enginename]/[hostname]/[webappname].xml
- $TOMCAT_PATH/webapps/[webappname]/META-INF/context.xml
- 설명
- 관리방식의 1은 파일명이 webappname그대로 따른다는 것이고, 2는 webapp의META-INF아래에 context.xml에다가 기술한다는 차이점이 있습니다.
- 해당 파일에([webappname].xml 혹은 context.xml) server.xml에서 context를 기술하는 것과 마찬가지로 <Context>를 기술하면 됩니다.
- auto deploy
- webapps(appBase경로)폴더에 war파일을 넣어두면 자동으로 deploy하는 방식입니다.
- 설정방법
- server.xml에서 Host의 attribute에 autoDeploy를 true설정해줍니다.
- 예시 : <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
- server.xml에서 Host의 attribute에 autoDeploy를 true설정해줍니다.
- 사용방법
- .war 파일을 appBase에 복사하면 deploy됩니다.
- 압축해제된 webapp이 appBase 복사되면 deploy됩니다.
- appBase에 있던 .war가 갱신되면 re-deploy됩니다.(단, host attribute인 unpackWARs가 true여야 합니다.)
기존에 압축해제된 webapp은 제거되고 갱신된 .war를 압축해제합니다. - 압축해제된 webapp에 /WEB-INF/web.xml이 변경되면, re-loading됩니다.
- webapp의 descriptor file(deploy의 3가지방법 중 2번째 방법 참조)이 변경되면 re-deploy됩니다.
- $TOMCAT_PATH/conf/[enginename]/[hostname]/[webappname].xml 파일이 추가될경우 re-deploy됩니다.
- <context docBase="...." ...>에서 docBase가 삭제되었을때 un-deploy됩니다.
참조 : http://tomcat.apache.org/tomcat-7.0-doc/deployer-howto.html#Deploying_using_the_Client_Deployer_Package
'Programming > Web Programming' 카테고리의 다른 글
Node.js 시작하기 (0) | 2014.06.27 |
---|---|
JavaScript 개요 (0) | 2014.06.24 |
javascript - oop (0) | 2014.03.14 |
javascipt Date객체 formatting yyyy-MM-dd hh:mm:ss (0) | 2014.01.13 |
jQuery - jQuery 시작하기 (0) | 2011.11.10 |