Web/JSP

[JSP] 1. 톰캣 서버 구축/사용 팁

Binceline 2014. 7. 12. 21:19

출처 : https://www.youtube.com/watch?v=_Grz3gtnuJM&list=PL6ieCYNds2bZtaZd_UOJHyiW20hdm0pic&index=2

아파치 톰캣 서버를 이용했다. 

톰캣은 웹 어플리케이션의 컨테이너이다

웹 어플리케이션 컨테이너 -> 웹 프로그램을 관리하는 컨테이너. 로드, 소멸, 등을 다 담당한다.

웹 어플은 컨테이너 안에서 돌아간다. 자바, 등등으로 돌아간다.


서버를 시작하려면 톰캣 HOME 폴더의 bin 폴더에 있는 startup.bat 배치 파일을 실행시키면 된다.

이 때 에러가 난다면 아마 JAVA와 톰캣의 환경 변수가 지정되지 않았거나 잘못되었기 때문일 것이다.

웹 서버 확인은 http://localhost:8080/ 이 주소를 통해 접속할 수 있는데,

localhost라는 것은 127.0.0.1을 뜻하므로 서비스할 때는 사용할 수 없는 주소다.

이걸 공인 IP로 교체할 경우 전 세계 어디에서든 이용할 수 있는 웹 서버가 된다.

192.168.xxx.xxx 같은 공유기를 통해 받은 IP를 이용 중이라면, 그 공유기 사용자만 이용할 수 있는 웹 서버가 된다.

localhost 대신에 IP 주소를 입력한다(공인 IP이면 어디서든 이용 가능한 웹 서버가 된다)


포트번호를 바꾸는 방법

- 기본적으로는 8080으로 지정되어 있는데, conf 폴더에서 server.xml 파일을 열고

이 부분을 수정해 주고 웹 서버를 다시 켜 주면 된다.


근데 네이버를 예로 보자. http://www.naver.com/ 까지만 입력해도 알아서 기본 문서를 준다. 이렇게 기본 문서를 설정하는 기능은 어떻게 구현할까? 

현재 http://localhost/로 접속할 시 아파치 톰캣 서버는 Apache Tomcat/8.0.9 로 기본 문서가 지정되어 있다. 이걸 변경해야 한다.

그 설정은 바로 conf 폴더의 web.xml 파일에서 지정할 수 있다. server.xml은 서버가 시작될 때 설정을 하는 것이고, 웹에 대한 내용을 다룰 땐 web.xml을 사용한다.

web.xml 문서에서 이런 내용이 있는데, 여기가 바로 기본 문서를 지정해 주는 곳이다.

동작은 이렇다.

index.html 문서가 있다면 그걸 기본 문서로 해 줘라.

없다면 index.htm을... 그것도 없다면 index.jsp 문서를... 이런 식으로 쭉 이어가는 것이다.

그럼 수정하고 서버를 다시 켜주자.


웹 서비스를 여러 개 돌리는 방법

웹 서버를 여러개 가지고 있을 필요는 없다. 하나의 웹 서버에서 홈 디렉토리를 여러 개 가지고 있으면 된다.

http://IP(or hostname):Port/context/리소스들

hostname은 다음과 같이 요청할 수 있는데,

- www.abc.com

- email.abc.com

- admin.abc.com

이렇게 해 놓고 각각 홈 디렉토리를 지정해 주면 되는 것이다.

하지만 이것은 도메인을 각각 구매를 해야 하는데, 다음과 같은 방법이 있다.

- IP가 다르다

- 또는 Port가 다르다

- 또는 context가 다르다

이렇게 3개중 하나라도 다르면 된다.

근데 보통 hostname이 바뀌면 안되므로, 보통 port나 context를 변경한다.

port번호로도 차별화를 둘 수 없는 상태라면, context를 다르게 해야 한다.

그 방법은 다음고 같다.

conf 폴더의 server.xml 파일을 편집해야 한다.

이런 부분이 있는데, 도메인 이름(hostname)을 여러 개 설정하려면 이걸 여러개 만들면 된다.

context를 수정해서 차별화하는 방법은 이렇게 하면 된다.

<Context path="" docBase=""/>를 </Host> 하기 전에 추가한다.

docBase : 문서를 관리하고 있는 별도의 폴더의 주소.

path : docBase로 지정된 디렉토리의 별칭을 지정한다. ex) "/aa", "/test", ...

하지만 conf의 web.xml 하나에서 똑같이 관리하고 있으므로 기본 문서 이름이 똑같은 파일이 폴더 내에 있어야 한다.

반응형

'Web > JSP' 카테고리의 다른 글

[JSP] JSP 강좌 사이트  (0) 2014.07.15
[JSP] 2. 서블릿 API 이용  (0) 2014.07.14