JServ 설치

Web/Common 2012. 2. 10. 16:49

JServ 설치

김민식 <minskim@bawi.org>

1999년 2월 24일


JServ는 Apache에서 servlet을 사용할 수 있도록 해 주는 모듈이다. 이 모듈은 아파치와 함께 컴파일할 수도 있고, 동적 모듈로 만들어 이를 지원하는 아파치에서 적재할 수 있도록 만들 수도 있다. 이 글에서는 두 가지 경우에 대하여 Jserv 1.1을 설치하는 방법을 설명한다.

1. 소개

JServ는 아파치 웹써버에서 자바 써블릿을 사용할 수 있게 해 준다. 써블릿은 `써버에서 실행되는 애플릿'으로 생각하면 된다. 써블릿은 웹서버에서 바로 실행되므로 새로운 프로세스를 만들어 실행하는 CGI에 비해 효율면에서 월등히 우수하다.

2. 필요한 것

JServ를 사용하려면 다음과 같은 것들이 필요하다.

3. 컴파일

JServ는 두 가지 방법으로 사용할 수 있다. 첫번째는 아파치에 직접 포함시켜 컴파일을 하는 것이고, 두번째는 동적 로딩 모듈로 만드는 것이다. 두번째 방법을 사용하려면 기존의 아파치가 동적 모듈을 지원하여야 한다. RPM 등의 패키지로 배포되는 아파치는 대부분 이 기능을 지원하고 있으며, 직접 아파치를 컴파일한다면 configure 명령 실행시에 다음 옵션을 주면 된다.

--enable-rule=SHARED_CORE --enable-module=so

어떤 방식으로 JServ를 이용할 지를 결정하고, 그에 맞춰 아파치를 설정했다면 이제 JServ를 컴파일 할 차례이다. 그러기 위해서는 configure 명령 실행시에 컴파일 과정의 여러 옵션을 결정해 주어야 한다.

3.1 설치 디렉토리

Jserv가 설치될 곳을 다음 옵션으로 정해 준다.

--prefix=/usr/local/jserv
여기에는 실제로 JServ 모듈이 저장되는 것이 아니라 JServ 관련 문서들만이 저장된다. 설치과정이 끝난 후에는 이 곳에 docs라는 디렉토리만 생긴 것을 볼 수 있을 것이다. Jserv 모듈 자체는 아파치와 함께 컴파일되거나 아파치의 동적 모듈이 저장되는 곳(libexec)에 함께 저장된다. 그 외의 JServ 설정 파일들은 아파치 설정파일이 있는 디렉토리(conf) 안의 jserv란 디렉토리에 저장된다.

3.2 아파치 디렉토리

JServ를 동적 모듈로 만들기로 했다면 아파치가 설치되어 있는 곳을 알려주어야 한다. 동적 모듈을 만들 때 아파치에서 제공하는 apxs라는 툴을 사용하기 때문이다. JServ 1.1에서는 다음 옵션을 사용하여 apxs의 위치를 절대경로로 적어 주어야 한다.

--with-apxs=/path/to/apache/installation/bin/apxs

apxs는 아파치가 설치될 때 하위 디렉토리로 생성되는 bin 디렉토리에 있으므로 쉽게 찾을 수 있을 것이다.

JServ를 동적 모듈로 사용하지 않고 아파치에 직접 컴파일해 넣으려면 다음 옵션을 추가한다.

--with-apache-src=/path/to/apache/source

뒷 부분의 경로는 실제 자신의 씨스템에 맞춰 설정하여야 한다.

3.3 JDK

만일 JDK_HOME이나 JAVA_HOME 등의 환경 변수가 미리 정의되어 있다면 다음 설정으로 넘어가도 좋다. 하지만 그렇지 않다면 JDK가 있는 곳을 다음 옵션으로 알려주어야 한다.

--with-jdk-home=/path/to/jdk

3.4 JSDK

CLASSPATH 환경 변수가 JSDK를 사용할 수 있도록 설정되어 있지 않다면 다음 옵션으로 JSDK의 위치도 설정해 주어야 한다.

--with-JSDK=/path/to/jsdk.jar

필요한 모든 옵션을 주고 configure를 실행시키면 컴파일 준비가 끝난다. 이제 makemake install 명령을 실행시키면 컴파일 및 설치가 완료된다. 만일 아파치에 직접 컴파일해 넣는 방법을 쓰고 있다면 아파치도 설치하는 것을 잊지 말자. 이 경우 아파치의 configure 실행시에 다음 옵션을 주어야 한다.

--activate-module=src/modules/jserv/libjserv.a

4. 시험

실제로 JServ가 동작하는지 시험해보자. JServ를 컴파일한 디렉토리에 보면 example이란 디렉토리가 있을 것이다. 그 안에 jserv.conf란 파일이 있는데, 이것을 httpd.conf에 포함시켜주면 JServ를 시험해 볼 수 있다. httpd.conf에 다음 줄을 추가하면 아파치에서 jserv.conf를 읽어들이게 된다.

Include conf/jserv/jserv.conf

JServ를 제대로 설치했다면 아파치 설정 파일들이 들어 있는 디렉토리 밑에 jserv란 디렉토리가 새로 생기고, 그 안에 jserv.conf가 있으니 그 경로를 적어 주면 된다.

마지막으로 할 일은 로그 파일이 저장되는 디렉토리에 JServ가 파일을 써 넣을 수 있도록 하는 것이다. 대개의 경우 웹써버를 nobody로 실행하므로 nobody에게 쓰기 권한을 열어주면 된다. JServ의 로그 파일은 아파치의 로그 파일과 같은 곳에 저장되므로 해당 디렉토리를 nobody의 소유로 만드는 것이 가장 간단한 방법이다.

이제 아파치를 새로 띄우고, 브라우져에서 다음 URL을 입력해 보라.

http://ServerName:port/servlets/Hello

ServerName과 port를 맞게 주었다면 JServ가 동작하고 있다는 글을 볼 수 있을 것이다.

5. 이 문서에 대하여

이 문서의 최신판은 WebDox에서 찾아볼 수 있으며, HTML 및 포스트스크립트 파일로 제공된다.

출처 - http://wiki.kldp.org/wiki.php/LinuxdocSgml/JServ-KLDP

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

URI & URL  (0) 2012.02.11
MIME  (0) 2012.02.11
웹 접근성  (0) 2012.02.05
랜더링(rendering), 랜더링엔진(rendering engine), 레이아웃 엔진(layout engine)  (0) 2012.01.24
AOL, 넷스케이프 개발 중단  (0) 2012.01.23
Posted by linuxism
,