컨테이너에 웹 애플리케이션 등록
웹 애플리케이션은 일반 PC에서 실행되는 자바 애플리케이션과 달리 단독으로 실행할 수 없다. 웹 애플리케이션은 톰캣과 같은 웹 컨테이너에서 실행되는 구조이다. 따라서 만든 웹 애플리케이션을 실행하려면 우선 톰캣에 등록부터 해야 한다.
가장 간단한 방법으로는 톰캣 루트 디렉토리의 하위 디렉토리인 webapps에 작성한 웹 애플리케이션을 위치시킨 후 톰캣을 재실행하는 방법이 있다. 하지만 이 방식은 프로젝트 파일을 통째로 복사해야 하므로 번거롭고 불편하다. 다른 방법으로는 컨텍스트(Context)를 추가하는 방법이 있다.
컨텍스트(Context) 추가 방법
컨텍스트(Context)
개발자가 정한 위치에 웹 애플리케이션을 생성한 후 그 위치를 server.xml에 등록해 놓고 톰캣을 실행하는 개발 방식이 있다. 이때 server.xml에 등록하는 웹 애플리케이션을 Context라 부른다.
* 기본적으로 webapps/ROOT가 등록된다.
컨텍스트(Context) 추가 방법
1. $TOMCAT_HOME/conf/Catalina/localhost/ 디렉토리에 context 파일을 추가하는 방법
2. server.xml 파일에 Context 항목을 추가시키는 방법
컨텍스트를 추가하는 방법에는 두가지가 있다. 그 중 2번 방법인 server.xml에 컨텍스트를 추가하는 방법은 톰캣 버전이 올라가면서 지양하는 방법이다. 서버를 재실행해야 하기 때문이다. tomcat 권고사항에서도 1번을 권장하므로 되도록 1번 방법을 적용하는 게 운영에 편리할 수 있다.
▶ 방법 1. $TOMCAT_HOME/conf/Catalina/localhost/ 디렉토리에 context 파일을 추가
1. 톰캣 설치 루트 디렉토리/conf/Catalina/localhost에 xml 생성
예를 들어 TestWeb이라는 context를 추가하고 싶다면
$TOMCAT_HOME/conf/Catalina/localhost/TestWeb.xml 생성
2. TestWeb.xml 파일 설정
▶ 방법 2. server.xml 파일에 Context 항목 추가
1. server.xml 실행
- server.xml은 톰캣 설치 루트 디렉토리 아래, conf 디렉토리에 있다.
- 메모장이나 vscode 편집기를 이용해서 파일을 연다.
2. context 등록
- server.xml을 열면 다음과 같은 부분이 있다.
- Context 태그를 이용하여 다음과 같이 등록한다.
<Context path="/컨텍스트 이름 (경로)"
docBase="실제 웹 애플리케이션의 디렉토리 위치"
reloadable="true 또는 false" />
- path는 접속할 url 경로에 해당하는 부분이고 docBase는 참조할 폴더 경로이다. reloadable은 class 변경 시 자동 반영에 대한 코드로 개발 시 true, 운영시 false를 설정한다.
3. 서버 실행하기
- 톰캣을 재실행한다.
- 등록한 컨텍스트 이름(경로)인 /webMal/main.html로 요청한다.
* 번외
- 이클립스의 등록된 tomcat의 Web Modules > Add External Web Modules에서 간단히 등록하는 방법을 사용했다.
- Document base : 컨테이너로 올릴 실제경로
- Path : 클라이언트에서 인지 가능한 패스
참고
'Java' 카테고리의 다른 글
[SQL] 선언적 파티션 (POSTGRESQL) (0) | 2022.05.20 |
---|---|
Apache 로드밸런싱 + 세션 클러스터링 (0) | 2022.05.18 |
[Linux] 크론탭, Crontab 설정 (0) | 2022.04.25 |
[Linux/CentOS 7] 프로세스, 작업환경 명령어(kill, ps, jobs...) (0) | 2022.04.25 |
click 이벤트 중복 제어 (0) | 2022.03.11 |