Program/JAVA

tomcat 5.5 버전에서의 server.xml 설정하기 context path 추가하기

나이트로 2008. 5. 19. 11:10
5.5 부터 기존 server.xml 에 context path 추가 하지 말라네요..

해보니 기존처럼 해도 되긴 되는데.. 뭐 보안상의 이유로 그렇게 하지 말라고 하네요.

인터넷 찾아보니 간단하긴 합니다

방식은 아래와 같다.


우선 server.xml 의 Host name 에다가 자신이 만들고 싶은 host name 을 기술한다.

그다음 tomcat 설치디렉토리/conf/Catalina/ 디렉토리 밑에 host name 에 기술한 이름의 디렉토리를 만든다.

그리고 그 디렉토리안에 ROOT.xml 파일을 만들어서 context path 를 지정하는 형식이다.


예)

톰캣 설치디렉토리 : C:\web\Tomcat

웹 서비스들 페이지가 있는 디렉토리 : D:\work_nio

웹 서비스 페이지 1 : D:\work_nio\swing.naver.com\WEB-INF\src

웹 서비스 페이지 2 : D:\work_nio\me.naver.com\WEB-INF\src


즉, 톰캣이 설치된 디렉토리에서 웹페이지들 및 소스를 나두는것이 아니고

별도의 디렉토리를 만들어서 이곳에서 웹페이지들 및 소스들 넣고 싶은것이다.

보통 이렇게들 많이 운영을 할것이다. apache 의 virtualhost 를 생각하면 될것이다.


위는 swing.naver.com , me.naver.com 으로 웹 서버를 운영하고 싶은 예를 둔것이다.



< 단계 1 >

C:\web\Tomcat\conf\server.xml 편집


   <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false"

     xmlNamespaceAware="false">
   </Host>
   

이렇게만 있는 부분 바로 아래에 다음과 같이 추가를 해준다.


   <Host name="swing.naver.com" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false"

     xmlNamespaceAware="false">
   </Host>


   <Host name="me.naver.com" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false"

     xmlNamespaceAware="false">
   </Host>


그리고 기본적으로 port 는 8080 으로 되어있는데 이렇게 되면 http://swing.naver.com:8080 이런식으로 주소를 넣어야하니

불편하기 그지없다. port="8080" 을 port="80" 으로 변경을 하여 http://swing.naver.com 으로 접속할 수 있도록 해준다.



< 단계2 >

C:\web\Tomcat\conf\Catalina 디렉토리 밑에

server.xml 파일에서 입력해준 host name 으로 디렉토리를 만들어준다.


아마 기본적으로 localhost 라는 디렉토리는 있을 것이다.

즉,

C:\web\Tomcat\conf\Catalina\swing.naver.com

C:\web\Tomcat\conf\Catalina\me.naver.com



< 단계3 >

만들어준 디렉토리밑에 ROOT.xml 파일을 각각 만들어준다.

즉,

C:\web\Tomcat\conf\Catalina\swing.naver.com\ROOT.xml

C:\web\Tomcat\conf\Catalina\me.naver.com\ROOT.xml



< 단계4 >

이렇게 만들어준 각각의 ROOT.xml 에 바로 context path 를 기술해 주면 된다.


C:\web\Tomcat\conf\Catalina\swing.naver.com\ROOT.xml 의 내용


<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="D:/work_nio/swing.naver.com" path="" reloadable="true">
</Context>



C:\web\Tomcat\conf\Catalina\me.naver.com\ROOT.xml 의 내용


<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="D:/work_nio/me.naver.com/" path="" reloadable="true">
</Context>



< 단계 5 >

톰캣을 stop 한 후 start 한다.


이제 웹에서 http://swing.naver.com/index.html 하면 나올거에요~


단, D:/work_nio/swing.naver.com/WEB-INF\src 밑에 index.html 파일이 있어야겠고

이런 도메인 주소를 가지고 있어야겠죠.


만약에 지금 내 PC에서 테스트를 하고 싶다면 충분히 localhost 가지고만 하실 수 있습니다.

하지만 자신 PC의 IP로 주위사람들이 웹에서 ip 주소를 입력하여 들어오고 싶을때는

ip로 host name 을 지정하여 위의 단계처럼 만드시면 되겠죠~

'Program > JAVA' 카테고리의 다른 글

java DateUtil  (0) 2010.06.18
tomcat web.xml  (0) 2008.05.19
tomcat 6.0 host 추가  (0) 2008.05.19
tomcat server.xml  (0) 2008.05.19
Tomcat 5 JNDI DataSource를 통한 DB 커넥션 풀 사용  (0) 2008.05.19