이전 tomcat 설치하기 예제처럼 맥에 톰캣을 설치하면 'http://localhost:8080'로 접속되는 웹 루트폴더가 '/usr/local/apache-tomcat-5.5.25/webapps/ROOT'가 된다.
jsp나 java 파일을 만들기 위해서 이 폴더를 찾아다니는 것도 힘들지만, 더 큰 문제는...
/usr 폴더가 hidden 속성인지 머시기 때문인지... 일반 맥 어플리케이션들이나 finder에서 가지고 놀 수가 없다는 것이다. 따라서 웹 루트 폴더로 작업하기가 짜증이 난다.
이런 이유로 웹의 루트폴더를 한번 바꿔보자.
tomcat의 폴더설정을 바꾸려면 xml로 되어있는 설정파일들을 건드려주어야 한다.
이 설정 파일을 건드리기 위해 약간의 설명을 곁들이면...
tomcat은 폴더 단위가 아니라... 웹 어플리케이션 단위로 설치, 배포된다.
즉, servlet이나 jsp, html 묶음으로 만들어진 구성 단위(폴더 묶음처럼 보이는)가 웹 어플리케이션이 되는 것이라 생각하면 쉽다.
tomcat을 설정할 때에는 이런 웹 어플리케이션 하나하나를 Context라고 부르며 설정 xml 파일(server.xml)에서 각 웹 어플리케이션 당 하나의 Context element로 취급하여 설정한다.
이 역시 본인처럼 초보자들을 대상으로 한 글이기 때문에...
너무 많은 기대는 하지 말자... 흐흐흐...
여하튼 tomcat의 server.xml을 설정을 수정하여 웹 루트 폴더를 변경할 것이다.
편의상 tomcat이 설치된 폴더를 %CATALINA_HOME%으로 표시하겠다.
1. 웹 루트로 사용할 폴더 만들기
터미널을 열고 적당한 위치에 웹 루트로 사용할 폴더를 만들어 준다.
cd /
mkdir webRoot
본인은 /webRoot 라는 폴더를 만들어 웹 루트 폴더로 사용할 것이다.
2. tomcat의 설정 파일(server.xml) 조작하기
역시 터미널에서 %CATALINA_HOME%/conf 폴더로 이동하여 vi 에디터를 이용하여 server.xml 파일을 열어 수정한다.
cd /usr/local/apache-tomcat-5.5.25/conf
vi server.xml
이 부분에서 appBase부분을 새로 설정할 웹 루트 폴더(appBase=“/webRoot”)로 변경해준다.
수정한 화면
이 Host element가 닫히기 전에... 즉, </Host> 항목이 나오기 전에 Context element을 넣어 설정해주어야 한다.
</Host>를 찾아 바로 윗 줄에 아래와 같이 Context element를 입력해준다.
<Context path=“” docBase=“.” reloadable=“true” />
이 Context 항목에 웹 루트 폴더에 배포될 웹 어플리케이션에 대한 각종 설정이 들어간다.
설정할 수 있는 속성들은 여기서 다루지 않는다.
Context 항목을 입력한 화면
자... 이렇게 설정하고 tomcat을 재기동하면 웹 루트 폴더가 변경되어 있는 것을 확인 할 수 있다.
/webRoot에 새로운 index.htm을 넣어두고 접속한 화면
참고로...
tomcat 5.5에서는 웹 어플리케이션을 설정하는 Context element를 server.xml에 설정할 수도 있지만, %CATALINA_HOME%/conf/Catalina/localhost 폴더에 별도의 xml 파일로 (예를 들면 ROOT.xml와 같이) 웹 어플리케이션 하나하나씩 별도로 저장해둘 수도 있으며, 이 방법을 권장했었다.
근데 tomcat 6.0을 설치하고 보니 이런 부분이 또 좀 변경된 것 같고...
뭐 그냥 보편적으로 이용할 수 있는 방법으로 정리하였다.
덧붙임:
원래 글은 tomcat에 포함된 웹 어플리케이션 배포툴을 이용하여 설정하는 방법이었지만... 그게 더 복잡해보여서 그냥 xml을 직접 편집하는 방법으로 수정해 보았습니다.