차 례
1. 환경 설정
2. jdk install
3. apache install
4. tomcat install
5. mod_jk install
6. 환경 설정
httpd.conf, workers2.properties, jk2.properties
7. 서비스 구동
8. 한글환경구성하기
1. 환경 설정
#>>/etc/profile or .bash_profile for USER's
# profile 파일에 아래 내용을 적어 두면 시스템 전사용자가 사용할수 있고
# 각 user별 .bash_profile 에 적어두면 해당 사용자만 적용이된다.
# 그리고 설치된 Shell 의 종류벌로 한다면 /etc/bashrc 파일에 적어두어면
# bash 셀을 사용하는 전 User가 들이 환경 변수를 부여 받는다.
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# 인터넷을 뒤지다 보면 아래와 같은 환경 변수 설정 하는 부분이 많이 있다.
#
# [주의 사항]은 httpd2 를 쓸경우 아래와 같이 반드시 APACHE2_HOME 라고 해야한다.
# APACHE_HOME 라고 설정하고 설치하면 tomcat_connector가 설치가 안된다
# 필자는 모르고 설정 하고 하다가 Apache 1.3 requires apr to built from source, use --with-apr and --with-apr-util
# 에러가 나오는 바람에 애를 먹었었다.
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
### For WebServer
export JAVA_HOME=/usr/java/java
export APACHE2_HOME=/usr/local/apache2
export CATALINA_HOME=/usr/local/tomcat
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/activation.jar:$JAVA_HOME/lib/mail.jar:$CATALINA_HOME/common/lib/servlet.jar
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$APACHE2_HOME/bin:.
2. jdk install
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#install JAVA SDK
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sh j2sdk-1_4_2_05-linux-i586-rpm.bin
rpm -Uvh j2sdk-1_4_2_05-linux-i586.rpm
cd /usr/java
ln -s j2sdk1.4.2_05 java
3. apache install
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Install HTTP
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# 파일 앞축을 풀고 컴파일을 하면 되는데
# 다양한 옵션을 주다보니 에러 해결을 위해 옵션을 바꾸는 것이 번거롭다.
# 그래서 필자는 아래 install-httpd.sh 과 같은 스크립트를 많이 쓴다.
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
tar xvzf httpd-2.0.52.tar.gz
>> install-httpd.sh
cd httpd-2.0.52
make clean
./configure \
--prefix=/usr/local/apache2 \
--with-mpm=prefork \
--disable-status \
--disable-asis \
--disable-cgi \
--disable-userdir \
--enable-speling=shared \
--enable-rewrite=shared \
--enable-modules=so
make
make install
설치 확인
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
/usr/local/apache2/bin/httpd -t
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
컴파일 옵션에서 disable 된 모듈들이 많다.
대부분 오류가 해당 모듈이 적재되지 않아, 환경 파일이 맞지 않아 생긴 오류일 것이다.
아래 httpd.conf 수정 하는 부분을 참고 하면 오류가 해결 될 것이다.
4. tomcat install
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Install - tomcat
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
cd /usr/local/src/jakarita
mv jakarta-tomcat-5.5.4 /usr/local
cd /usr/local
ln -s jakarta-tomcat-5.5.4 tomcat
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#ENV 변수 설정
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
### Fro WebServer
export JAVA_HOME=/usr/java/java
export APACHE_HOME=/usr/local/apache2
export CATALINA_HOME=/usr/local/tomcat
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/activation.jar:$JAVA_HOME/lib/mail.jar:$CATALINA_HOME/common/lib/servlet.jar
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$APACHE_HOME/bin:.
5. mod_jk install
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# install jakarta-tomcat-connectors-jk2
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# 주의 사항 위에서도 언급 했지만 중간부터 읽는 이를 위해 당부한다.
# httpd2.x를 설치하면서 환경변수에 APACHE_HOME를 명시하면 아래와 같은 에러만 나오고 설치가 안된다.
# Apache 1.3 requires apr to built from source, use --with-apr and --with-apr-util
# 반드시 APACHE2_HOME=apche_dest_dir 로 변수 명을 바꾸어야 한다.
# 참고로 필자는 jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2/configure 파일을 디버깅 한결과
# 알아낸 문제 인만큼 상당한 고행을 겪었다.
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>tar xvzf jakarta-tomcat-connectors-jk2-src-current.tar.gz
>cd jakarta-tomcat-connectors-jk2-2.0.4-src/
>cd jk/native2
>./buildconf.sh
#[ apache 2.X.X ]
>./configure --with-apxs2=/usr/local/apache2/bin/apxs
> make
> cd ../build/jk2/apache2
> apxs -n jk2 -i mod_jk2.so
#[ apache 1.3.X ]
>./configure --with-apxs=/usr/local/apache/bin/apxs \
--with-apr=/usr/local/src/httpd-1.3.X/srclib/apr \
--with-apr-util=/usr/local/src/httpd-1.3.X/srclib/apr-util
> make
> cd ../build/jk2/apache13
> apxs -n jk2 -i mod_jk2.so
# DSO로 로딩 되도록 컴파일 한 모듈을 등록 한다.
# 설치 확인
> ls usr/local/apache2/modules/mod_jk.so
6. 환경 설정
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
## add httpd.conf
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# httpd의 모듈이 일부만 컴파일 되어 있다 따라서 필요 없는 모듈은
# apache 1.3버전의 httpd.conf 와 같이 적용 하거나 삭제 하면 된다.
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1. userdir 모듈이 로딩 되지 않아 주석 처리 하거나 다음과 같이 처리한다.
#---------------------------------------------------------------------
UserDir public_html
->> to Change
UserDir public_html
2. autoindex 모듈이 로딩 되지 않으면 주석 처리 하거나 다음과 같이 처리한다.
#---------------------------------------------------------------------
#
# IndexOptions: Controls the appearance of server-generated directory
# listings.
#
IndexOptions FancyIndexing VersionSort
========= 중략 ========
ReadmeName README.html
HeaderName HEADER.html
#
# IndexIgnore is a set of filenames which directory indexing should ignore
# and not include in the listing. Shell-style wildcarding is permitted.
#
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
->> to Change
<IfModule mod_autoindex.c>
#
# IndexOptions: Controls the appearance of server-generated directory
# listings.
#
IndexOptions FancyIndexing VersionSort
========= 중략 ========
ReadmeName README.html
HeaderName HEADER.html
#
# IndexIgnore is a set of filenames which directory indexing should ignore
# and not include in the listing. Shell-style wildcarding is permitted.
#
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
</IfModule>
3. add line -->>
#---------------------------------------------------------------------
LoadModule jk2_module modules/mod_jk2.so
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# HTTP jk2 환경 파일 수정 :
# /user/local/apache2/conf/workers2.properties
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[shm]
file=/usr/local/apache2/logs/jk2.shm
size=1048576
[channel.socket:localhost:8009]
port=8009
host=127.0.0.1
# Defile The Worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009
# Anounce Status Worker
# [status:status]
# Announce Uri mapping
[uri:/examples/*]
worker=ajp13:localhost:8009
# Uri mapping
# jsp 이외의 페이지는 자바로 실행 되지 않는다.
[uri:/*.do;/*.jsp]
worker=ajp13:localhost:8009
# Uri status
[uri:/status/*]
worker=status:status
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# 톰캣 JK2 환경 파일 수정 :
# /usr/local/tomcat/conf/jk2.properties
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
channelSocket.port=8009
shm.file=/usr/local/apache2/logs/jk2.shm
apr.jniModeSo=inprocess
7. 서비스 구동
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# START TOMCAT
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
/usr/local/apache2/bin/apachectl restart
[root@stage2 tomcat]# $CATALINA_HOME/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JAVA_HOME: /usr/java/java
8. 한글 환경 설정#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1. 방법 : OS 환경 charset 이 ISO-8859-1 ( .iso8859-1 .latin1) 인경우
가. /etc/sysconfig/i18n 에 아래와 같이 설정된경우
>LANG="en_US.iso8859-1"
>SUPPORTED="en_US.iso8859-1:en_US:en:ko_KR.eucKR:ko_KR:ko:en_US.UTF-8"
>SYSFONT="latarcyrheb-sun16"
나. Mysql DB default charset 은 latin1 으로 설정한다.
다. 아파치의 httpd.conf 에서 다음과 같이 수정을 한다.
>#AddDefaultCharset ISO-8859-1
->AddDefaultCharset EUC-KR
라. 하이버 네이트를 사용하는경우
<property name="connection.driver_class">org.gjt.mm.mysql.Driver</property>
<property name="connection.url">jdbc:mysql://192.xx.xxx.xxx:3306/DBNAME</property>
<property name="connection.useUnicode">true</property>
<property name="connection.characterEncoding">KSC5601</property>
<property name="connection.username">DB_ID</property>
<property name="connection.password">DB_PASSWD</property>
<!--property name="connection.pool_size">10</property-->
위와 같이 설정이 되면 jsp 상에서 별도의 인코딩 없이 사용이 가능하다.
2. 방법 : 위의 모든 charset 들을 UTF8로 통일 한다.
3. 방법 : 위의 모든 charset 들을 EUC_KR 로 통일 한다.
출처 : http://blog.naver.com/couplewith.do