본문 바로가기

작업/Web

Apache Tomcat에서의 기본 application directory 변경

Windows의 예를 들자면, 기본적으로 설치된 Apache Tomcat(이하 Tomcat)의 document root directory는 다음과 같다.
{tomcat installed directory}/webapp


또 이 하위로는 ROOT와 기타 다른 context들이 존재한다.

다음은 이러한 기본 디렉토리(webapp)를 변경하는 방법이다.
참고로, Tomcat 6.x 버전을 기준으로 기록한다.

설치 디렉토리의 conf 디렉토리 내에 server.xml 파일이 존재하는데 이 파일을 편집기로 연다.
파일의 맨 마지막 부분을 보면 <Host name="localhost" 로 시작하는 부분이 있다.


이 부분을 보면 appBase라는 attribute가 있는데, 이 녀석을 수정해서 기본 application directory를 변경할 수 있다.
위의 그림에서처럼 상대경로를 attribute의 값으로 입력하면, tomcat이 설치된 디렉토리 하위에서 디렉토리를 찾게되는데 이 부분은 절대 경로도 입력가능하다.

또한, Host 하위에 들어갈 수 있는 element로는 Context가 있는데, Context를 설정함으로써 ROOT 컨텍스트나 특정 컨텍스트의 document 경로를 별도로 지정할 수 있다.
docBase attribute에도 appBase attribute 처럼 상대경로와 절대경로 입력을 모두 지원한다.

이 때 주의해야할 점이 있는데, appBase와 하위 context의 docBase의 경로가 같은 경우 docBase 하위의 디렉토리를 context로 인식하여 실행이 제대로 되지 않는다.

그리고 tomcat에서도 Apache Web Server처럼 가상 호스트를 지원하는데, 설정 방법은 위에서 설명한 것과 동일하다. 다만, 가상 호스트를 위한 별도의 <Host> element가 정의되어 있어야 한다.

예를 들면, 다음과 같이 정의되면 된다.

<Host name="bongbong.net" appBase="{directory}" 나머지 부분은 위와 동일...>
    <Alias>www.bongbong.net</Alias>
    <Value className=... (이 부분은 기본 설정 부분을 참조하라. log에 관련된 것임)
</Host>


'작업 > Web' 카테고리의 다른 글

패킷 전송을 방해하는 원인을 찾은듯  (0) 2009.07.21
Apache + Tomcat + mod_jk 연동시 flush 문제  (0) 2009.06.12
Apache Log 설정 Tip  (0) 2008.11.26
쿠키(cookie) 쓰기  (0) 2008.11.10