
의문
하나의 톰캣에 두개 이상의 서비스를 구축하기 위해서는 여러 방법이 있지만 그 중에서도 가장 간편한 것은 port를 다르게 하는 것과 context-path를 다르게 하는 것이다. 톰캣의 server.xml 파일에서 설정하면 되는데, 나는 지금껏 port를 같게 하면 context 또한 무조건 설정을 따로 해줘야 한다고 생각했다.
<Context path="/aaa" docBase="aaa" />
<Context path="/bbb" docBase="bbb" />
그런데! 따로 context-path 지정을 안해줘도 정상적으로 작동한다는 것을 발견했다..!
답
잘 동작하는걸 떠나서 context 지정을 따로 안 해줬는데 그럼 어떤 걸 path로 삼고 나뉘어지는가에 대해 찾아보니 appBase라는 결론에 도달했다. appBase에 지정된 폴더로 찾아가서 리소스를 찾는 것이다. 그리고 그 리소스 명으로 context가 나뉘어지고 있었다.
<Host name="localhost" appBase="C:/test/product" unpackWARs="true" autoDeploy="true">
가령 위에 설정에 따르면 "C:/test/product" 경로에는 aaa 라는 파일과 bbb라는 파일이 있어서, 같은 port로 /aaa, /bbb 이렇게 나뉘어지는 것 같다. 신기하다!
'Tomcat' 카테고리의 다른 글
| [Tomcat] Tomcat 에러 페이지 설정 (0) | 2025.11.17 |
|---|---|
| [Tomcat] Tomcat 실행 흐름 (feat.setenv.bat 파일) (0) | 2025.07.04 |
| [Tomcat] Tomcat의 war-tracker 파일 (0) | 2025.03.28 |
| [Tomcat] Tomcat > bin 디렉터리의 주요 파일 설명 (0) | 2025.02.11 |
| [Tomcat] tomcat - work directory (2) | 2023.03.09 |