최적화 Apache + Tomcat ( Servlet & Jsp ) + SSL + PHP + etc
_______________________________________________________________________
________
글쓴이: Chongnux Team
윤영한(shee at chongnux.klug.or.kr)
홈페이지: http://chongnux.klug.or.kr/ 작성일: 2002.1.17
버 젼: 1.0
_______________________________________________________________________
________
목차
1.PGCC 설치
2.MYSQL 설치
3.JDK 설치
4.Tomcat 설치
5.Imap 설치
6.GD 설치
7.apache 초기 작업
8.openssl 설치
9.mm 설치
10.mod_ssl 설치
11.apache & mod_gzip
12.SSL 인증서 수동으로 만들기
13.Apache+mod_ssl 을 자동시작 하려면
14.DSO PHP 설치
15.Zend Optimizer 설치
16.apache & tomcat 연동 mod_webapp.so 설치
17.최종 연동 테스트
18.후기
_______________________________________________________________________
________
1.PGCC 설치
[바이너리 화일 다운]
http://www.goof.com/pcg/binaries-linux.html [설치]
- /usr/local/pgcc 경로로 설치 후 설치되 이름을 pgcc로 변경한다.
# 풀면서 특정 경로에 푼다.
[root@vm_master PGCC]# tar zxvfp pgcc-2.95.3-linux-x86-
glibc2.1.tar.gz -C /
./
./usr/
./usr/local/
./usr/local/pgcc/
./usr/local/pgcc/bin/
./usr/local/pgcc/bin/gcov
./usr/local/pgcc/bin/cpp
./usr/local/pgcc/bin/i686-pc-linux-gnu-gcc
./usr/local/pgcc/bin/protoize
./usr/local/pgcc/bin/unprotoize
- 중략 -
./usr/local/pgcc/man/
./usr/local/pgcc/man/man1/
./usr/local/pgcc/man/man1/gcc.1
./usr/local/pgcc/man/man1/cccp.1
# 이름 구별을 위하여 pgcc, pcpp로 변경한다.
[root@vm_master bin]# cd /usr/local/pgcc/bin/
[root@vm_master bin]# ls
cpp gcc gcov i686-pc-linux-gnu-gcc protoize unprotoize
[root@vm_master bin]# mv gcc pgcc
[root@vm_master bin]# mv cpp pcpp
[root@vm_master bin]# ls
gcov i686-pc-linux-gnu-gcc pcpp pgcc protoize unprotoize
_______________________________________________________________________
________
2.MYSQL 설치
[소스 화일 다운]
http://www.mysql.com/downloads/mysql.html [최적화 옵션]
http://www.mysql.com/doc/C/o/Compile_and_link_options.htmlhttp://www.mysql.com/doc/c/o/configure_options.html http://w
ww.mysql.com/doc/M/y/MySQL_binaries.html http://www.mysql.com/doc/W/h/Which_version.htmlhttp://tunelinux.pe.kr/mysql/m
anual/10.txt http://database.sarang.net/database/mysql/tuning/optimize_mysql.htmlhttp://www.phpleader.co.kr/study/study
content.php?study2_seq=47 [설치] # 다음과 같은 내용의 스크립트를 작성해서 실행 시킨다. [root@
vm_master mysql-3.23.47]# vi pgcc_mysql.sh #!/bin/bash # 옵션 설정 시작 - 펜티엄 최적화
CC="/usr/local/pgcc/bin/pgcc"
CFLAGS="-O6 -mpentiumpro -mstack-align-double -fomit-frame-pointer -
march=pentiumpro"
CXX="/usr/local/pgcc/bin/pgcc"
CXXFLAGS="-O6 -mpentiumpro -march=pentiumpro -mstack-align-double -
fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti"
# 초기화 설정 - 디렉토리지정, 클라이언트,서버 정적 라이브러화"
# - 문자셑지정, 디버깅하지 않음, 트랜잭션사용"
./configure --prefix=/usr/local/mysql --with-client-ldflags=-all-
static
--with-mysqld-ldflags=-all-static --with-charset=euc_kr --without-
debug
--enable-assembler --with-innodb
# 컴파일
make
# 설치
make install
# 데이터 베이스 설치
/usr/local/mysql/bin/mysql_install_db
[root@vm_master mysql-3.23.47]# chmod +x pgcc_mysql.sh
[root@vm_master mysql-3.23.47]# ./pgcc_mysql.sh
- 생략 -
# 설치 후에 시스템에 맞추어서 시스템 최적화 옵션 화일을 /etc/ 로 복사한
다.
# 다음은 128메모리를 사용하는 경우이다.
[root@vm_master mysql-3.23.47]# cd support-files
[root@vm_master support-files]# cp my_medium.cnf /etc/my.cnf
# mysql 계정 및 그룹 생성 및 퍼미션 권한을 변경해준다.
[root@vm_master support-files]# groupadd mysql
[root@vm_master support-files]# useradd -g mysql mysql
[root@vm_master support-files]# chown -R root /usr/local/mysql
[root@vm_master support-files]# chown -R mysql /usr/local/mysql/var
[root@vm_master support-files]# chgrp -R mysql /usr/local/mysql
# 라이브러들을 등록해준다.
[root@vm_master lib]# echo /usr/local/mysql/lib/mysql
>> /etc/ld.so.conf
[root@vm_master lib]# ldconfig
# 서버를 구동 시킨다.
[root@vm_master /bin]# /usr/local/mysql/bin/safe_mysqld --log --
user=mysql
--log-update=update.log -O max_connections=500 -O
max_connect_errors=999999999 &
# 루트 패스워드를 넣는다.
[root@vm_master /bin]# mysqladmin -u root password '패스워드'
[[ 패스워드 분실시 ]]
[root@vm_master /bin]# killall mysqld
[root@vm_master /bin]# ./safe_mysqld --skip-grant &
[root@vm_master support-files]# mysql
mysql> UPDATE user SET Password=PASSWORD('패스워드') WHERE
user='root';
mysql> FLUSH PRIVILEGES;
_______________________________________________________________________
________
3.JDK 설치
[프로그램 다운로드]
http://java.sun.com/j2se/1.3/download-linux.html [설치]
# 리눅스용 화일을 받아서 풀고 디렉토리를 옮긴다.
[root@vm_master AJS]# ls -al j2sdk-1_3_1_02-linux-i386.bin
-rw-rw-r-- 1 root root 26311391 Jan 7 2002 j2sdk-1_3_1_02-
linux-i386.bin
[root@vm_master AJS]# chmod +x j2sdk-1_3_1_02-linux-i386.bin
[root@vm_master AJS]# ./j2sdk-1_3_1_02-linux-i386.bin
- 중 략 -
[root@vm_master AJS]# mv jdk1.3.1_02/ /usr/local/jdk
# 전체 환경에 자바와 톰켓를 사용할 수 있게 설정을 한다.
[root@vm_master root]# vi /etc/profile
#JDK & Tomcat Setting
export JAVA_HOME="/usr/local/jdk"
export CLASSPATH=".:$JAVA_HOME/lib/tools.jar:/usr/local/jakarta-
tomcat/lib/servlet.jar:$JAVA_HOME/jre/lib/rt.jar"
export PATH="$PATH:$JAVA_HOME/bin"
# 새로 로긴후 java 라고 쳐서 테스트 한다.
[문제해결]
# 다음과 같은 에러는 아래의 패키지를 설치한다.
[root@vm_master AJS]# java
/usr/local/jdk/bin/i386/native_threads/java: error while loading
shared libraries:
libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file
or directory
# CD-ROM 마운트후 다음 패키지를 설치 한다.
[root@vm_master AJS]# cd /mnt/cdrom/RedHat/RPMS/
[root@vm_master RPMS]# ls com*
compat-libstdc++-6.2-2.9.0.16.i386.rpm
[root@vm_master RPMS]# rpm -ivh compat-libstdc++-6.2-2.9.0.16.i386.rpm
Preparing...
########################################### [100%]
1:compat-libstdc++
########################################### [100%]
# Jaf & JavaMail 설치
[다운로드]
JavaBeans Activation Framework :
http://java.sun.com/beans/glasgow/jaf.html JavaMail : http://java.sun.com/products/javamail/index.html [참고 자료]
http://www.javastudy.co.kr/docs/lec_java/javamail/javamail.html [설치]
# 압축을 풀고 디렉토리 이름을 바꾼다.
[root@vm_master AJS]# cp jaf1_0_1.zip /usr/local/
[root@vm_master AJS]# cp javamail-1_2.zip /usr/local/
[root@vm_master local]# cd /usr/local/
[root@vm_master local]# unzip jaf1_0_1.zip
[root@vm_master local]# unzip javamail-1_2.zip
[root@vm_master local]# mv jaf-1.0.1/ jaf/
[root@vm_master local]# mv javamail-1.2/ javamail/
# /etc/profile 에 다음을 추가 한다.
[root@vm_master root]# vi /etc/profile
# jaf & javamail Setting
export
CLASSPATH="$CLASSPATH:/usr/local/javamail/mail.jar:/usr/local/jaf/activ
ation.jar"
_______________________________________________________________________
________
4.Tomcat 설치
[바이너리 다운로드]
http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0.1/bin/ # 아파치와 연동하기 위하여 webapp_mo
dules를 받어 놓는다. http://jakarta.apache.org/builds/jakarta-tomcat- 4.0/release/v4.0.1/bin/linux/i386/
[설치]
# 화일을 풀고 이름을 바꾼다.
[root@vm_master AJS]# tar zxvfp jakarta-tomcat-4.0.1.tar.gz -
C /usr/local
[root@vm_master AJS]#
cd /usr/local/
[root@vm_master local]# mv jakarta-tomcat-4.0.1/ jakarta-tomcat/
_______________________________________________________________________
________
5.Imap 설치
[소스 다운로드]
http://www.planetmirror.com/pub/imap/ [설치]
# 패키지 확인 후 없으면 컴파일, 설치하고 필요 라이브러리를 카피한다.
[root@vm_master AJS]# rpm -qa | grep imap
[root@vm_master AJS]# tar zxvf imap.tar.Z
[root@vm_master AJS]# cd imap-2001a/
# 디렉토리를 /usr/local/imap으로 이동 시킨다.
[root@vm_master AJS]# mv imap-2001a/ /usr/local/imap
[root@vm_master AJS]# cd /usr/local/imap
[root@vm_master imap]# make slx
[root@vm_master imap]# cp ipopd/ipop[23]d /usr/sbin/
[root@vm_master imap]# cp imapd/imapd /usr/sbin/
# 아파치가 imap을 인식하도록
[root@vm_master imap]# cp ./c-client/c-client.a /usr/lib/libc-client.a
[root@vm_master imap]# cp ./c-client/mail.h /usr/local/include/
[root@vm_master imap]# cp ./c-client/rfc822.h /usr/local/include/
[root@vm_master imap]# cp ./c-client/linkage.h /usr/local/include/
# imap을 서버에서 운영가능하도록 xinetd 설정 화일을 만든다.
[root@vm_master xinetd.d]# cat imapd
service imap
{
disable = no
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/imapd
}
# 서비스 확인
[root@vm_master xinetd.d]# netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address
State
tcp 0 0 *:imap *:*
LISTEN
_______________________________________________________________________
________
6.GD 설치
[소스 다운로드]
http://freshmeat.net/projects/gd/homepage/ [설치]
# 화일을 풀고 컴파일을 한후 디렉토리를 통으로 옮긴다.
[root@vm_master AJS]# tar zxvf gd-1.8.4.tar.gz
[root@vm_master AJS]# cd gd-1.8.4
[root@vm_master gd-1.8.4]# make
[root@vm_master AJS]# mv gd-1.8.4 /usr/local/gd
_______________________________________________________________________
________
7.apache 초기 작업
[소스 다운로드]
http://www.apache.org/dist/httpd/ # 아파치를 간단히 기본 설치 디렉토리를 세팅한다.
[root@vm_master apache_1.3.22]# tar zxvf apache_1.3.22.tar.gz
[root@vm_master apache_1.3.22]# cd apache_1.3.22.tar.gz
[root@vm_master apache_1.3.22]# ./configure --prefix=/usr/local/apache
_______________________________________________________________________
________
8.openssl 설치
[소스 다운로드]
http://www.openssl.org/source/ [설치]
# 소스 풀고 컴파일 한다. 인스톨은 하지 않는다.
[root@vm_master AJS]# tar zxvf openssl-0.9.6b.tar.gz
[root@vm_master AJS]# cd openssl-0.9.6b/
[root@vm_master openssl-0.9.6b]# ./config
[root@vm_master openssl-0.9.6b]# make;make install
_______________________________________________________________________
________
9.mm 설치
- 공유 메모리 관련 라이브러리
[소스 다운로드]
http://www.engelschall.com/sw/mm/ [설치]
[root@vm_master AJS]# tar zxvf mm-1.1.3.tar.gz
[root@vm_master mm-1.1.3]# ./configure
[root@vm_master mm-1.1.3]# make
[root@vm_master mm-1.1.3]# make install
[root@vm_master AJS]# mv mm-1.1.3 /usr/local/
_______________________________________________________________________
________
10.mod_ssl 설치
[소스 다운로드]
http://www.modssl.org/source/ [설치]
[root@vm_master AJS]# tar zxvf mod_ssl-2.8.5-1.3.22.tar.gz
[root@vm_master AJS]# cd mod_ssl-2.8.5-1.3.22
[root@vm_master mod_ssl-2.8.5-1.3.22]# ./configure
> --with-apache=../apache_1.3.22
> --with-ssl=/usr/local/ssl --enable-shared=ssl
> --with-mm=/usr/local/mm-1.1.3
_______________________________________________________________________
________
11.apache & mod_gzip
[ mod_gzip모듈 다운로드 ]
http://www.remotecommunications.com/apache/mod_gzip/ 에서 mod_gzip.c
[ mod_gzip 참고 사이트]
http://www.apache.kr.net/documents/mod_gzip_kr.html [소스 수정]
# 최대 클라이언트 접속수 조정
[root@vm_master apache_1.3.22]# vi src/include/httpd.h
#ifndef HARD_SERVER_LIMIT
#ifdef WIN32
#define HARD_SERVER_LIMIT 1024
#elif defined(NETWARE)
#define HARD_SERVER_LIMIT 2048
#else
#define HARD_SERVER_LIMIT 256 // 이곳의 숫자값을 512로 변경
#endif
#endif
# 버전 정보를 변경한다.
#define SERVER_BASEVENDOR "Apache Group" //적당히 다른 이름으로
#define SERVER_BASEPRODUCT "Apache" //다른 이름으로
#define SERVER_BASEREVISION "1.3.22" //버전을 적당히 고친다.
#mod_gzip.c를 받어서 아파치 디렉토리의 다름 경로로 이동 시킨후 설정 내
용에
#mod_gzip에 관한 내용을 집어 넣는다.
[root@vm_master AJS]# cp mod_gzip.c apache_1.3.22/src/modules/extra/
[root@vm_master AJS]# echo "AddModule modules/extra/mod_gzip.o" >>
apache_1.3.22/src/Configuration.tmpl
[root@vm_master apache_1.3.22]# EAPI_MM="/usr/local/mm-1.1.3"
SSL_BASE="/usr/local/ssl"
[root@vm_master apache_1.3.22]# ./configure --prefix=/usr/local/apache
> --enable-rule=SHARED_CORE --enable-shared=ssl
> --enable-module=ssl --enable-module=so --enable-shared=max
[root@vm_master apache_1.3.22]# make
# 이과정에서 서버를 묻는다.. 정확히 자신의 https 서버이름을 지정해야 한
다.
[root@vm_master apache_1.3.22]# make certificate TYPE=custom
[root@vm_master apache_1.3.22]# make install
#설치후 mod_gzip 설정 화일을 httpd.conf에 넣는다. 참고로 옆에 있는 #있
는 주석은 모두 지운다.
<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_min_http 1000 #
1000 = HTTP/1.0, 1001 = HTTP/1.1
mod_gzip_minimum_file_size 300 # 압
축할 최소 Size
mod_gzip_maximum_file_size 0
mod_gzip_maximum_inmem_size 100000
mod_gzip_keep_workfiles No
mod_gzip_item_include file .html$ # 압
축할 파일들 설정
mod_gzip_item_include file .htm$
mod_gzip_item_include file .jsp$
mod_gzip_item_include file .php$
mod_gzip_item_include file .pl$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^text/.html # 설
명서에는 이렇게 되있는데
# 다
음줄을 넣어야 되더군요.
mod_gzip_item_include mime ^text/html$ #
HTML 형식 모두 압축
mod_gzip_item_include mime ^application/x-httpd-php #
PHP 스크립트 압축
mod_gzip_item_include mime ^httpd/unix-directory$
mod_gzip_item_include handler ^perl-script$
mod_gzip_item_include handler ^server-status$
mod_gzip_item_include handler ^server-info$
mod_gzip_item_exclude file .css$ # 압
축 제외 파일들.
mod_gzip_item_exclude file .js$
mod_gzip_item_exclude mime ^image/.*
mod_gzip_temp_dir /dev/shm # 이
것 Linux용이고요 보통 '/tmp'하시면됩니다.
LogFormat "%h %l %u %t "%V %r" %>s %b mod_gzip: %
{mod_gzip_result}n In:%{mod_gzip_input_size}n Out:%
{mod_gzip_output_size}n:%{mod_gzip_compression_ratio}npct."
common_with_mod_gzip_info2
CustomLog logs/mod_gzip common_with_mod_gzip_info2
</IfModule>
_______________________________________________________________________
________
12. SSL 인증서 수동으로 만들기
[아파치에서 make certificate에서 인증서 자동으로 생성된다. 하지만 잘 안
되는 경우는
다음과 같이 해서 인증서를 만든다. ]
# 여러가지 묻는데 "."로 하면 그냥 넘어간다. 혹은 메세지에 맞게 항목을
넣는다.
[root@vm_master apache_1.3.22]# cd /usr/local/ssl/bin/
[root@vm_master bin]# ./openssl req -new > new.cert.csr
[root@vm_master bin]# ./openssl rsa -in privkey.pem -out new.cert.key
[root@vm_master bin]# ./openssl x509 -in new.cert.csr -out
new.cert.cert -req -signkey new.cert.key -days 999
# 키값을 복사한다.
[root@vm_master bin]# cp
new.cert.key /usr/local/apache/conf/ssl.key/server.key
[root@vm_master bin]# cp
new.cert.cert /usr/local/apache/conf/ssl.key/server.crt
_______________________________________________________________________
________
13. Apache+mod_ssl 을 자동시작 하려면
[참고 사이트]
http://linux.sarang.net/board/?p=read&table=qa&no=105693&page=3&o[at]
=s&o[sc]=a&o[ss]=mod_ssl&o[st]=a
'httpd.conf' 파일을 열어서 'SSLPassPharaseDialog'란 부분을
찾아서 그 뒷부분에다가 'exec:실행파일명' 형식으로 적어주시고
그 '실행파일'을 만들어주심 됩니다. 이 '실행파일'이 하는 일은
단순히 SSL Private Key에 대한 패스워드를 Clean Text 형식으로
출력해주는 것입니다.
아래는 예입니다. (패스워드가 'password'라고 가정함)
------------ httpd.conf 의 부분 ----------------------
SSLPassPhraseDialog exec:/usr/local/sbin/ssl_pass.sh
------------ 이 부분에서 자르세요 --------------------
------------ ssl_pass.sh -----------------------------
#!/bin/sh
echo password
------------ 이 부분에서 자르세요 --------------------
여기서 반드시 주의하실 점은 'ssl_pass.sh'의 권한 설정입니다.
절대적으로 root만 읽고 실행할 수 있어야 합니다.
# chown root.root ssl_pass.sh
# chmod 500 ssl_pass.sh
위에서 예를 든 방법 외에 그냥 바로 'httpd.conf' 파일내에
패스워드를 적어주는 방법도 있지만, 보안 상 그다지 추천할
만한 방법은 아닌 것 같습니다.
좀 더 자세한 정보를 얻고 싶으시면, mod_ssl 홈페이지에
가셔서 'SSLPassPharaseDialog'란 키워드로 검색을 해보심
됩니다.
14.DSO PHP 설치
[소스 다운로드]
http://www.php.net/downloads.php # 소스를 풀고 설정을 한다.
[root@vm_master php-4.1.1]# CFLAGS='-O2 -
I/usr/local/ssl/include' ./configure
--prefix=/usr/local/php
--with-apxs=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql
--with-imap=/usr/local/imap
--with-gd=/usr/local/gd
--enable-track-vars
--enable-magic-quotes
--with-openssl=/usr/local/ssl
--with-language=korean
--with-charset=euc_kr
--disable-debug
--with-xml
# 설치 한다.
[root@vm_master php-4.1.1]# make ;make install
[root@vm_master php-4.1.1]# cp php.ini-dist /usr/local/php/lib/php.ini
# 다음 php 관련 내용이 아파치 설정 화일에 있는지 확인 한다.
[root@vm_master conf]# cat httpd.conf | grep php
LoadModule php4_module libexec/libphp4.so
AddModule mod_php4.c
DirectoryIndex index.html index.php
# http://www.php.net) will typically use:
#AddType application/x-httpd-php3 .php3
#AddType application/x-httpd-php3-source .phps
AddType application/x-httpd-php .php .phtml .html .htm .ph
AddType application/x-httpd-php-source .phps
<Files ~ ".(cgi|shtml|phtml|php3?)$">
mod_gzip_item_include file .php$
mod_gzip_item_include mime ^application/x-httpd-php
_______________________________________________________________________
________
15.Zend Optimizer 설치
[다운로드]
http://www.zend.com/store/products/zend-optimizer.php # 소스를 풀고 디렉토리를 만들고 php.ini를 수정한
다. [root@vm_master AJS]# tar zxvf ZendOptimizer-1[1].2.0-PHP_4.1.0-
Linux_glibc21-i386.tar.gz
[root@vm_master AJS]# mkdir -p /usr/local/Zend
[root@vm_master AJS]# mkdir -p /usr/local/Zend/lib
[root@vm_master AJS]# cd ZendOptimizer-1.2.0-PHP_4.1.0-Linux_glibc21-
i386/data
[root@vm_master data]# cp ZendOptimizer.so /usr/local/Zend/lib/
# 다음 라인을 추가한다.
[root@vm_master data]# vi /usr/local/php/lib/php.ini
[Zend Optimizer]
zend_optimizer.optimization_level=7
zend_extension="/usr/local/Zend/lib/ZendOptimizer.so"
_______________________________________________________________________
________
16.apache & tomcat 연동 mod_webapp.so 설치
[ 모듈 다운로드 ]
http://jakarta.apache.org/builds/jakarta-tomcat- 4.0/release/v4.0.1/bin/linux/i386/
# 소스를 풀고 모듈을 설치 한다.
[root@vm_master AJS]# tar zxvf webapp-module-1.0-tc40-linux-
glibc2.2.tar.gz
[root@vm_master AJS]# cd webapp-module-1.0-tc40
[root@vm_master webapp-module-1.0-tc40]# cp
mod_webapp.so /usr/local/apache/libexec/
# 아파치 설정 화일에 다음 라인을 추가 한다.
[root@vm_master webapp-module-1.0-tc40]#
cat /usr/local/apache/conf/httpd.conf | grep web
LoadModule webapp_module libexec/mod_webapp.so
AddModule mod_webapp.c
# 아파치 설정 화일에서 도규먼트 루트 디렉토리를 톰켓 디렉토리로 변경한
다.
# 그리고 ssl 가상 호스트 또한 변경을 한다.
[root@vm_master webapp-module-1.0-tc40]#
cat /usr/local/apache/conf/httpd.conf | grep DocumentRoot
# DocumentRoot: The directory out of which you will serve your
#DocumentRoot "/usr/local/apache/htdocs"
DocumentRoot "/usr/local/jakarta-tomcat/webapps/ROOT"
# This should be changed to whatever you set DocumentRoot to.
# even if you change the DocumentRoot. Comment it if you don't
want to
# DocumentRoot /www/docs/dummy-host.example.com
#DocumentRoot "/usr/local/apache/htdocs"
DocumentRoot "/usr/local/jakarta-tomcat/webapps/ROOT"
# 아파치와 톰켓을 연결하는 부분이다. 이부분을 맨 마지막 부분에 넣는다.
[root@vm_master bin]# cat /usr/local/apache/conf/httpd.conf | grep
WebApp
WebAppConnection conn warp localhost:8008
WebAppDeploy examples conn /examples
WebAppInfo /webapp-info
# 최종 테스트 순서 톰켓을 먼저 구동한 다음에 아파치를 구동한다.
[root@vm_master bin]# cd /usr/local/jakarta-tomcat/bin/
[root@vm_master bin]# ./startup.sh
Guessing CATALINA_HOME from catalina.sh to ./..
Setting CATALINA_HOME to ./..
Using
CLASSPATH: ./../bin/bootstrap.jar:/usr/local/jdk/lib/tools.jar
Using CATALINA_BASE:./..
Using CATALINA_HOME:./..
Using JAVA_HOME: /usr/local/jdk
# 아파치 실행 할때 에러 메세지가 난다. 이것은 무시해도 된다. 잘 되네요.
[root@vm_master bin]# /usr/local/apache/bin/apachectl start
[Thu Jan 17 07:56:38 2002] [warn] Loaded DSO libexec/mod_webapp.so
uses plain Apache 1.3 API,
this module might crash under EAPI! (please recompile it with -DEAPI)
/usr/local/apache/bin/apachectl start: httpd started
_______________________________________________________________________
________
17.최종 연동 테스트
http://hostname/
https://hostname/
두가지가 모두 잘나온다면 성공.. 추카.. ;
# 아파치 구동시 문제가 있더라도 만약 다음과 에러가 나오더라도 이상 없
는 것이다.
[Thu Jan 17 07:52:34 2002] [warn] Loaded DSO libexec/mod_webapp.so
uses plain Apache 1.3 API,
this module might crash under EAPI! (please recompile it with -DEAPI)
_______________________________________________________________________
________
18.후기
이 문서를 만들기 위하여 수많은 테스트를 해보았다.
많은 이들이 참고가 되시길.. 최적화라.. 이것은 아직도 미지수 인것 같다.--이 곳에 서명을
적어주십시오. 뽀할할.... 모두들 성공하시길.. 쉬가..
청눅스 가끔 오세요...