티스토리 뷰

Servlet JSP

Context 사이트 추가하기

Programmers 2021. 4. 19. 14:25
반응형

Context사이트란?
 여러팀들이 각각의 사이트(하위 디렉토리)를 따로 만들고 localhost:8080(최상위폴더=root)내에서 각각의 사이트(하위 디렉토리들)을 요기서 통합해서 하나의 사이트에서 실행하는 것 처럼만드는데 이때 각각의 사이트(하위 디렉토리들)을 Context사이트라고 한다
결론은
최상위 디렉토리(사이트): 여기서 사이트들을 통합하고 여기서만 실행하는 것 처럼 보이게한다.
하위 디렉토리들(사이트들) = Context사이트: 하나의 사이트이지만 위의 최상위 디렉토리내에서 실행하는 것 처럼 보인다.

이유:  사이트간의 간섭을 줄이고 복잡한 협업을 할때 편의성을 유지하기 위해서일거다.

사용방법: 내가 사용하고 있는 C:\JSP\apache-tomcat-9.0.45\conf 내의 server.xml 파일을 수정한다.
그리고 C:\JSP\apache-tomcat-9.0.45\webapps\ITWeb 폴더내에 ITWeb.txt파일을 만들고
무슨 내용이든 입력을 해보자~!

기존 코드

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

코드 추가!

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
	<Context path="IT"
	docBase="C:\JSP\apache-tomcat-9.0.45\webapps\ITWeb"
	privileged="True"/>

설명:
 Context라는 코드를 통해서 path에 가상 디렉토리(유저들이 보는 경로)를 만들고, docBase에 실제 디렉토리 경로를 설정한다.
<Context path="가상의 디렉토리"
docBase="실제 디렉토리 경로"
privileged="True"/>

이 후에는 서버의 내용을 변경했기때문에 꼭 톰캣을 다시 시작해줘야한다.
localhost:8080/IT/ITWeb.txt (IT=가상 디렉토리명)
실제로는 이 경로에는 IT라는 디렉토리가 없다. 하지만 위의 가상 디렉토리 상에 존재한다고 가정하기때문에~~
자 이제 실행화면을 한번 보자~!

Context 사이트 출력화면

뭐가이상하나 한글은 안나오네. 아무튼 되네??

그래서 사실 server.xml을 변경하게되면 서버를 껏다 켜야하기 때문에 이 방법은 지양하고 있는 편이다.
공부를 위해서 해볼수 있지만 서비스 중인 경우에 서버를 껏다키는건 큰 문제가 발생하기 때문이다.
어플을 개발할 때에는 meta info에서 context를 마련할 수있다고 한다. 지금은 모르니깐 PASS~ 

반응형
댓글
공지사항