웹마스터 팁

아직 마니 허접하고 모자르지만
여기엔 소스 설치하는 법은 잘 못찾겠네요.
나름대로 삽질한 삽질기를 한번 올려봅니다.

첨부 파일은 제 홈에 설치 이야기 게시판에서 받아가세요
질문은 홈의 질답 이야기 게시판에서 해주세요.
메일로 질문은 받지 않습니다.
비츠로 홈 - http://vitro.pe.kr


톰캣은 참 설치하고 설정하기 까다롭고 리눅스에서 잘 안되는 것중에서
하나인듯 하다. 여기서는 그 설치법과 아파치와의 연동법(mod_jk사용)을 하고,
가상 호스트도 지원되게 하나 가상호스트 설정법과 설정파일 설정
(httpd.conf, workers.properies, server.xml)은
나중에 아파치 설치 완료후 설정할것이다.

톰캣 설치시 사용할 버전에 대해서 주의를 해야한다. 버전마다 조금씩 다르다. (조심)

------------  4.0.x 버전 소스  -----------------------------

tomcat-4.0.1소스는 톰캣 사이트에서 지금은 사라지고 없다.

톰캣은 버전이 달라지면서 설치법이 마니 다르다. 나도 톰캣땜에 약 3달정도 고생했다.ㅠㅠ
다른 4.0.x버전대도 4.0.1의 설치법과 거의 변동이 없는걸로 안다.
톰캣홈에 있는 소스를 사용하면 되나
내가 사용한 한글 패치시킨 4.0.1버전을 올려놓는다.

참고로 톰캣 소스를 다운 받아서 한글 패치를 하지 않으면 jsp페이지에서
한글이 깨지니 꼭 한글 패치를 구해서 패치하기를 바란다.(영어만 쓸거람 관계없겠져?)

jakarta-tomcat-connectors-jk-1.2.0-src.tar.gz 은 아래 사이트에서 다운 받는다.
http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk/release/v1.2.0/src/
나는 톰캣4.0.1을 설치시 4.0.1이 톰캣 사이트에 4.0.1 톰캣 컨넥터 전용 소스가
없었다. 그래서 위의 소스를 다운 받았으나 최신 4.0.x 소스를 설치하려면
그 버전의 톰캣홈에 그 버전 전용 컨넥터가 있으므로 그것 사용하기 바란다.

---------------------------------------------------------------


------------------  4.1.x 버전 소스  ---------------------------

현재 최신 버전인 톰캣 4.1.18을 다운 받으려면 (톰캣은 바이너리로 받는다.)
http://www.ibiblio.org/pub/packages/infosystems/WWW/servers/apache/jakarta/tomcat-4/binaries/

현재 최신 버전인 톰캣 4.1.18용 컨넷터는 아래에서 다운 받는다.
http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.18/src/

참고로 최신 소스를 다운 받으면 한글 패치가 적용되지 않았다.
최신 소스는 한글 패치도 잘 안나오니... 조금 옛날 버전 사용(4.0.x버전)을 권한다.
한글 사용할시 한글 패치를 구해서 패치하던가 웹페이지에 인코딩을 선언하라.
여기서 내가 테스트한 4.1.x버전은 톰캣 4.1.12을 사용했다.
--------------------------------------------------------------


jdk를 아래 사이트에서 자신이 설치할 버전을 다운 받는다.
http://java.sun.com/j2se/downloads.html

혹시라도 나중에 오라클을 깔거라거나 이미 오라클을 설치했다면
jdk가 깔려있을거니까 환경 설정만 잡아주면 되겠다.
오라클이 깔려있다면 jdk-1.3.1.i386.rpm 버전일거다.
오라클 사용한다면 그냥 이 버전을 써라.
그게 아니면 최신 버전인 j2sdk-1_4_0_01-fcs-linux-i386.rpm 써도 된다.

mm.mysql-2.0.8-you-must-unjar-me.jar(jdbc드라이버)를 아래 사이트에서 다운받는다.
http://prdownloads.sourceforge.net/mmmysql/?sort_by=name&sort=desc


각 소스들을 /var/tmp로 이동한다.

#######################################
######  자바 디벨로퍼 킷(jdk) 설치   #####
#######################################

cd /var/tmp

jdk는 자신이 다운 받은 버전을 설치한다. 첨엔 그냥 sh 파일명으로
한번 실행하고 나서 yes라고 치면 rpm 패키지 파일로 풀어진다.

-------------- 둘다 설치가 아니고 둘중에 하나만 설치 ---------
1.3.1 버전을 받은 경우
        rpm -Uvh jdk-1.3.1.i386.rpm
        ln -sf /usr/java/jdk1.3.1 /usr/java/jdk

1.4 버전을 받은 경우
        rpm -Uvh j2sdk-1_4_0_01-fcs-linux-i386.rpm
        ln -sf /usr/java/j2sdk1.4.0_01 /usr/java/jdk
---------------------------------------------------------

#####################
#####  jdbc설치  #####
#####################
jdbc의 경우 솔직히 내가 자바를 할줄 모르니까
잘은 모르는데 프로그래머들은 jdbc를 자신의
웹사이트의 webapp아래쯤인가 자신이 알아서
설치해서 쓰더라... 그러니 솔직히 이부분은
설치해도 자신이 안쓰면 안 쓰게 되는경우도 있을거다.

mkdir /usr/java/jdbc <-- 드라이버를 설치할 경로 만든다.
cp mm.mysql-2.0.8-you-must-unjar-me.jar /usr/java/jdbc/

우선 jdbc를 풀기 위해 jar명령을 사용하기 위해
먼저 환경 변수 등록
echo 'export PATH="$PATH:/usr/java/jdk/bin:/usr/tomcat/bin"
export JAVA_HOME=/usr/java/jdk
export CATALINA_HOME=/usr/tomcat
export TOMCAT_HOME=/usr/tomcat
export CLASSPATH=/usr/java/jdbc/mm.mysql-2.0.8' >> /etc/profile

source /etc/profile <-- 한번에 잘 적용 안될수 있으니 여러번한다.

아니면 아래 처럼 쉘창에서 몇번 선언해주자.(내가 설치할땐 환경변수가 잘 안먹었다)
export PATH="$PATH:/usr/java/jdk/bin:/usr/tomcat/bin"
export JAVA_HOME=/usr/java/jdk
export CATALINA_HOME=/usr/tomcat
export TOMCAT_HOME=/usr/tomcat
export CLASSPATH=/usr/java/jdbc/mm.mysql-2.0.8

드라이버 압축해제후 드라이버 디렉토리 생성후 원본 jar파일은 삭제
cd /usr/java/jdbc
jar xf mm.mysql-2.0.8-you-must-unjar-me.jar
rm -rf mm.mysql-2.0.8-you-must-unjar-me.jar

#############################
#####  tomcat 4.0.1설치  #####
#############################

tar zxpf jakarta-tomcat-4.0.1.tar.gz -C /var/tmp
mv /var/tmp/jakarta-tomcat-4.0.1 /usr
ln -s /usr/jakarta-tomcat-4.0.1 /usr/tomcat

#################################################
#####  tomcat-컨넥터 설치 (아파치와 연동 모듈)  #####
#################################################

소스의 압축을 해제한다.
tar zxpf jakarta-tomcat-connectors-jk-1.2.0-src.tar.gz -C /var/tmp

소스 디렉토리로 이동
cd /var/tmp/jakarta-tomcat-connectors-jk-1.2.0-src/jk/native

아파치 소스 경로 지정해서 컨피그 한다.
./configure
--with-apache=/var/tmp/apache_1.3.26
--enable-EAPI

컴파일
make

아파치 소스에 jk모듈이 추가됨.
make install

권한 설정
cd /usr/tomcat/bin
chown www shutdown.sh
chown www startup.sh
chown www shutdown.bat
chown www startup.bat
chmod 750 shutdown.bat
chmod 750 shutdown.sh
chmod 750 startup.bat
chmod 750 startup.sh

설정파일과 시작 스크립트 복사
cp tomcat/init.d/tomcat /etc/rc.d/int.d/tomcat
cp tomcat/conf/server.xml-4.0.1 /usr/tomcat/conf/

만약 톰캣 4.1.x대를 설치하였다면
cp tomcat/conf/server.xml-4.1.12 /usr/tomcat/conf/
를 복사한다. 4.1.x와 4.0.x는 설정이 쪼금 다르기 때문이다.

아래 파일을 복사한다.
cp tomcat/conf/workers.properies /usr/tomcat/conf/

chmod 700 /etc/rc.d/init.d/tomcat
chown 0.0 /etc/rc.d/init.d/tomcat
chkconfig --add tomcat
chkconfig --level 345 tomcat on

만약 jsp에서 한글이 잘 안나온다면
시스템 로케일을 한글로 고쳤나 확인해보아라.
그리고 tomcat에 한글 패치도 하여야 한글이 나오는데 패치되었나 확인해보라.

톰캣 한글 패치는 jsp 공부하는 사이트나
http://www.source2you.com/ <-- 자바 리눅스 홈
같은 곳을 뒤지면 나온다.

내가 올린 4.0.1 소스는 한글 패치한뒤 올린 소스이므로 이미 패치가 되어있다.
패치가 안나와 있고 로케일도 잘 설정되었는데도 한글이 깨지면.
jsp 페이지 상단에 다음 라인을 삽입하는 방법이 있다. 한글이 잘 나올것이다.

<%@ page contentType="text/html; charset=eucKR" %>

만약에 jsp페이지가 양이 많고 페이지 상단에 위의 라인을 삽입하는 방법을
사용하고 싶다면 내가 만든 쉘 스크립트를 이용해보라.
첨부한 han-patch.sh 파일을 실행하면 jsp페이지가 있는 경로를 묻는다.
단지 그 경로만 입력하면 그 경로 아래에 있는 모든 jsp페이지의
상단에 저 위의 라인이 삽입 될것이다.
(저 스크립트 짠다고 돌머리 엄청 깨졌다. ^^;
만약 제 스크립트가 도움이 되었다면 감사 멜 한통 부탁드립니다.)
제목 글쓴이 날짜
qmail-1.03설치⑤ (courier-imap연동) 비츠로 2003.02.28
qmail-1.03설치⑥ (qmail-scanner 스팸필터링) 비츠로 2003.02.28
qmail-1.03설치⑦ (qmailadmin 큐메일 웹관리툴) 비츠로 2003.02.28
qmail-1.03설치⑧ (squirrel웹메일과 연동) 비츠로 2003.02.28
apache-1.3.x설치① (필수조건과 pre configure) 비츠로 2003.03.02
apache-1.3.x설치② (mm, mod_ssl, mod_perl모듈) 비츠로 2003.03.02
apache-1.3.x설치③ (resin, jdk, jdbc연동) 비츠로 2003.03.02
apache-1.3.x설치③ (tomcat4, jdk, jdbc연동) 비츠로 2003.03.02
apache-1.3.x설치④ (php4 + db + mail연동) 비츠로 2003.03.02
apache-1.3.x설치⑤ (apahce설치, php가속기 추가) 비츠로 2003.03.02
apache-1.3.x설치⑥ (apahce, tomcat, resin가상호스팅설정) 비츠로 2003.03.02
리눅스에서 한통 ADSL 설정해 주기.. [5] 이희덕 2003.03.02
Sendmail 취약점 발표 [3] 조수권 2003.03.04
안녕하세요, php 보안 취약점인데 한번 보시길.. [28] Dopesoul 2003.03.08
php 의 보안 관련.. [7] Dopesoul 2003.03.08
apache server의 log file 관리 [3] 겨울늑대 2003.03.09
트래픽관리 Throttle-status 사용자 인증시키기 [1] Cksoft 2003.03.18
Apache1.3.27 + PHP4.3.1 + MySQL4.0.12 + ZendOptimizer2.1.0 [6] FriZeX 2003.03.19
mysql에서 사용자 권한을 잘못 부여하여 root로 접속불가, 사용권한 제한등 문제 해결방법 [3] 정종화 2003.03.20
커널 2.4 local ptrace-related vulnerability 패치하세요~ [8] 김도한 2003.03.20