톰캣은 아파치 소프트웨어 재단의 웹 어플리케이션 서버(WAS)로서,서블릿을 이용한 동적인 ****웹 페이지를 만들어준다.
톰캣을 실행시키기 위해서는 자바 런타임 환경이 필요하다.
디렉토리 구조

- bin 폴더는 톰캣을 실행하고, 종료시키는 스크립트 (.bat , .sh 등) 파일이 들어있다.
- conf 폴더는 서버 전체 설정파일 폴더등 server.xml 등이 들어 있다.
- lib폴더는 톰캣구동하는데 필요한 라이브러리(jar)가 들어있다
- logs 폴더는 예외 발생 사항 등의 로그를 저장한다.
- temp 폴더는 임시 저장용 폴더이다.
- webapps 폴더는 웹 어플리케이션이 위치하는 폴더 이다.
- work 폴더는 jsp 파일을 서블릿형태로 변환한 java 파일과 class 파일이 저장한다.
conf 디렉토리의 주요 설정 파일들
1)context.xml
- 세션,쿠키 저장 로 등을 지정하는 설정 파일이다.
<Context path="" docBase="C:\\app\\webshop" reloadable="true" >
<Context path="" docBase="내가 설정한 애플리케이션 경로"
reloadable="true"/>
-
path은 ****웹어플리케이션의 경로명. request.getContextPath() 메소드의 결과값이 이 속성의 값과 동일하다.
-
docBase은 웹어플리케이션이 위치한 폴더의 경로명을 의미한다.
-
Context란?
2)server.xml
-
Tomcat의 주 설정 파일로 접근/접속에 관한 설정이 주를 이룬다.
-
server.xml 경로 : $CATALINA_HOME/conf/
- $CATALINA_HOME 은 톰캣이 설치된 경로를 뜻한다
3)web.xml
- Tomcat의 환경설정 파일이며 서블릿, 필터, 인코딩 등을 설정할 수 있다.
- 가장 먼저 읽는 파일 DefaultServlet 지정 및 Servlet-mapping 설정을 할 수 있다.
- 디렉토리 목록 - url 접근시 디렉토리 목록의 사용여부 결정
- 웰컴 페이지 설정 - url 접근시 사용할 첫 페이지 설정
- 자동 서블릿 로드 - 서블릿이 재컴파일 되었을 때 자동으로 리로드할지 여부를 설정
- 특정 Webapp에 대한 디렉토리 목록 사용 설정
- 웹 컨텍스트 루트 디렉토리 및 요청 URL 설정
- 기본 webapp 디렉토리 변경
- catalina.policy
- 보안 정책 권한 설정 파일이다. JVM에 의해서 웹 애플리케이션에 강제적으로 보안 정책 권한을 설정한다.
- catalina.properties
- 서버를 시작할 때 검색하는 서버, 공유로더, jar 등의 공유정보를 포함한다.
6)tomcat-users.xml
- 사용자 권한과 인증 정보를 설정한다.
- 톰캣 관리자를 사용할 때 활용되는 정보이며, 기본적으로 주석처리가 되어 있다. 주석해제 및 설정을 하여야 톰캣 관리자가 활성화 된다.
- logging.properties
-
톰캣 인스턴스의 로깅 설정 파일이다.
-
톰캣에서는 java.util.logging을 구현한 줄리(tomcat-juli.jar) 라이브러리를 로깅 서비스로 활용한다.
-
기본적으로 4가지 로그 파일을 설정한다.
(1) catalina.{yyyy-mm-dd}.log
- 톰캣 로그 : 서버로그 or 카탈리나 로그로도 불린다.
- stdout(System.out), stderr(System.err)에 관한 에러로그들을 출력한다.
(2) localhost.{yyyy-mm-dd}.log
(3) manager.{yyyy-mm-dd}.log
(4) host-manager.{yyyy-mm-dd}.log