[웹서버] APM + Jserv + tomcat 설치법
참고자료
– MySQL + Apache + PHP4 + Zend Optimizer 설치하기 : 백명훈
(mhbaek at chollian.net)
– Apache에서 Tomcat 사용하기 : 김민식 (minskim at bawi.org) 김세곤
(sehkone at bawi.org)
설치환경
조립 PC
CPU : Intel Pentium III 660Mhz * 2 (Dual)
M/B: ASUS
RAM: 512M
SCSI: Adaptec U2W
HDD: SCSI Quantum 20G
OS: 한글 Redhat Linux 6.2
Kernel: 2.2.16
설치에 필요한 파일
mysql-3.23.28-gamma.tar.gz (http://www.mysql.com/downloads/)
apache_1.3.14.tar.gz (http://www.apache.org/mirrors/)
php-4.0.3pl1.tar.gz (http://www.php.net/downloads.php)
ZendOptimizer-RC1-Linux-glibc2.1.tar.gz
(http://www.zend.com/download.php)
jakarta-tomcat.tar.gz
(http://jakarta.apache.org/builds/tomcat/release/v3.1/bin/jakarta-
tomcat.tar.gz)
mod_jserv.so
(http://jakarta.apache.org/builds/tomcat/release/v3.1/bin/linux/i386/mod_jserv.so)
JDK 1.1 이상
이 문서는 몇 부분에서 미완성이며, 현재 APM + tomcat 수준임. 그리고,
백명헌님의 문서를 주로 기초했음을 밝힙니다.
설치순서
1. 설치에 필요한 파일 다운받기
2. RPM으로 설치된 패키지 제거하기
3. MySQL, Apache, PHP4 바이너리 파일 압축풀기
4. MySQL 설치
5. Apache Configure(1)
6. PHP4설치
7. Apache Configure(2), 컴파일
8. Jserv 연동
9. Tomcat 설치하기
10. Zend Optimizer 설치
11. 환경설정화일 편집
12. Test 하기
13. 시스템 부팅시 데몬 실행 자동화
1. 설치에 필요한 파일 다운받기
해당 사이트 또는 미러사이트 등을 이용하여 파일을 다운로드 받는다.
root 권한으로 /tmp 에 저장
2. RPM으로 설치된 패키지 제거하기
지금부터의 작업은 반드시 root의 권한으로 해야 한다.
배포본 리눅스에 기본적으로 설치되어 있는 RPM 패키지를 제거한다.
[root@www /root]#/etc/rc.d/init.d/httpd stop 아파치 데몬을 종료시
킨다.
[root@www /root]#rpm -e apache
다음과 같은 메시지가 뜨면,
[root@www /root]#rpm -e apache
error: removing these packages would break defendencies:
webserver is needed by mod_perl-1.21-10
webserver is needed by php-3.0.15-2
이는 의존성을 나타내며, 의존성이 있는 패키지를 먼저 제거 후 아파치를
위와 같이 제거한다.
[root@www /root]#rpm -e mod_perl
[root@www /root]#rpm -e php
. MySQL, Apache, PHP4 바이너리 파일 압축풀기
tmp 디렉토리에 있는 tar.gz 소스 파일들을 푼다.
[root@www /tmp]#tar zxvf mysql-3.23.28-gamma.tar.gz
[root@www /tmp]#tar zxvf apache_1.3.14.tar.gz
[root@www /tmp]#tar zxvf php-4.0.3pl1.tar.gz
[root@www /tmp]#tar zxvf ZendOptimizer-RC1-Linux-glibc2.1.tar.gz
[root@www /tmp]#tar zxvf jakarta-tomcat.tar.gz
주: mod_jserv.so (풀지 않고 그대로 사용합니다.)
4. MySQL 설치
[root@www /tmp]#cd mysql-3.23.28-gamma
[root@www /mysql-3.23.28-gamma]#./configure —
prefix=/usr/local/mysql \\
–with-unix-soket-
path=/usr/local/mysql/tmp \\
–with-charset=euc_kr
위 옵션은 설치디렉토리와 소켓디렉토리를 지정하고 한글로 메시지를 출
력
하도록 하는 옵션이다.
DB 데이터를 저장할 디렉토리를 지정을 하려면 —
localstatedir/usr/local/mysql/data 와 같이 해 준다.
혹시 실수로 환경설정을 다시 해야할 경우 make distclean 명령을 한다.
Thank you for choosing MySQL! 이라는 메시지가 뜰것이다.
[root@www /mysql-3.23.28-gamma]#make 컴파일을 한다. 시스템 사양에
따라 시간 차이가 있으므로 사양이 낮은 컴퓨터는 조금 기다리세요. ^^
[root@www /mysql-3.23.28-gamma]#make install MySQL을 설치한다.
[root@www /mysql-3.23.28-gamma]#cd /usr/local/mysql/bin MySQL이 설
치된 디렉토리로 이동한다.
[root@www /bin]#./mysql_install_db MySQL의 데이터를 관리할 기초정
인 테이블 6개를 생성시킨다.
주의할 점은 mysql_install_db은 반드시 한번만 실행시켜야 한다.
[root@www /bin]#cd /usr/local/mysql/share/mysql
[root@www /mysql]#vi mysql.server
편집기로 열어서 safe_mysql이 실행되는 라인(78 line)에 —
language=korean 옵션을 추가한다.
$bindir/safe_mysqld –user=$mysql_daemon_user –pid-file=$pid_file —
datadir=$datadir –language=korean &
[root@www /mysql]#chmod 755 mysql.server 실행권한을 준다.
mysql데몬의 시작과 종료를 편하게 하기위해서 스크립트 PATH가 설정된
디
렉토리에 복사.
[root@www /mysql]#cp -p ./mysql.server /usr/bin
[root@www /mysql]#mysql.server start MySQL 데몬 시작하기, 엔터를
한번 두드리세요.
[root@www /mysql]#ps -ef | grep mysql MySQL 프로세스 확인하기
[root@www /mysql]#mysql.server stop MySQL 데몬 종료하기
5. Apache Configure(1)
[root@www /mysql]#cd /tmp/apache_1.3.14 초기에 아파치소스 압축을
풀어놓은 곳으로 이동.
[root@www /apache_1.3.14]#./configure –prefix=/usr/local/apache —
enable-module=so
6. PHP4설치
[root@www /apache_1.3.14]#cd ..
[root@www /tmp]#cd php-4.0.3pl1
[root@www /php-4.0.3pl1]#./configure –with-mysql=/usr/local/mysql \\
–with-apache=../apache_1.3.14 –enable-track-vars \\
–with-config-file-path=/usr/local/apache/conf \\
–with-mod-charset –with-language=korean –with-charset=euc_kr \\
–disable-debug –with-xml –enable-magic-quotes
옵션에 대한 추가 설명은 PHP메뉴얼을 참고하기 바랍니다.
만약 PostgeSQL이나 mSQL을 사용한다면 –with-pgsql=디렉토리경로 —
with-msql=디렉토리 경로와 같이 옵션을 사용하면 된다.
–enable-track-vars 옵션은 HTTP_GET_VARS, HTTP_POST_VARS,
HTTP_COOKIE_VARS 배열에 들어 있는 GET, POST, cookie 변수들이 어디서
왔는지 기억하도록 합니다. 꼭 설정해 두세요.
[root@www /php-4.0.3pl1]#make 컴파일을 하고,
[root@www /php-4.0.3pl1]#make install 인스톨을 한다.
7. Apache Configure(2), 컴파일
[root@www /php-4.0.3pl1]#cd /tmp/apache_1.3.14
[root@www /apache_1.3.14]#./configure –prefix=/usr/local/apache \\
–activate-module=src/modules/php4/libphp4.a
[root@www /apache_1.3.14]#make 아파치를 컴파일한다.
[root@www /apache_1.3.14]#make install 아파치 인스톨
8. Jserv 연동
[root@www /tmp]#cp mod_jserv.so /usr/local/apache/libexec
9. Tomcat 설치하기
[root@www /tmp]#mv jarkarta-tomcat-3.2-b7 /usr/local/jakarta
[root@www /tmp]#cd /usr/local/apache/conf # tomcat을 httpd 가 인
식하게 하는 작업
[root@www /apache]#vi ./conf/httpd.conf
http.conf 제일 밑줄에 다음의 문장을 덧부친다.
Include /usr/local/jakarta/conf/tomcat.conf
TOMCAT에는 두 개의 CONFIG 파일이 있는데, tomcat.conf는 httpd 를 위한
것이고, server.xml은 자체를 위한 것이다.
둘다. Port 번호가 있는데 디폴트는 8007로 조정되어 있다. 만약, 8007을
사용치 않는다면, 그냥 넘어가도 되고,
사용한다면, 각 파일을 열어 포트번호를 고쳐야 한다.
이외에도 server.xml에는 또 다른 Port 번호가 있는데 디폴트가 8080 이
다. 이 또한 조정이 필요하면 조정하되, 대부분의 사람들은
그대로 사용한다.
server.xml의 Port 관련 페이지
root@www /jakarta]#vi ./bin/startup.sh 다음 2개의 라인을 입력한다.
TOMCAT_HOME=`/usr/local/jakarta`
JAVA_HOME\\=`/usr/local/jdk1.2.2`
10. Zend Optimizer 설치
[root@www /apache_1.3.14]#cd /tmp
[root@www /tmp]#tar zvxf ZendOptimizer-RC1-Linux-glibc2.1.tar.gz
[root@www /tmp]#mkdir /usr/local/Zend
[root@www /tmp]#mv ZendOptimizer-RC1-Linux-
glibc2.1 /usr/local/Zend/lib
11. 환경설정 파일 편집
[root@www /tmp]# cp /tmp/php-4.0.3pl1/php.ini-
dist /usr/local/apache/conf/php.ini
[root@www /tmp]#cd /usr/local/apache/conf
[root@www /conf]#vi php.ini php.ini 파일을 열어서 맨 마지막에 다음
과 같이 Optimizer를 위한 설정을 추가한다.
zend_optimizer.optimization_level=7
zend_extension=”/usr/local/Zend/lib/ZendOptimizer.so”
[root@www /conf]#vi httpd.conf 아파치의 환경설정 파일을 열어서 다
음과 같은 설정을 한다.
360라인쯤에 Default 시작페이지 설정을 해 준다
DirectoryIndex index.php index.php3 index.html
720라인 정도에서 다음 내용의 주석을 풀고 원하는 환경으로 설정을 한
다.
AddType application/x-httpd-php .php .php3 .ph
AddType application/x-httpd-php-source .phps
apache 데몬의 시작, 종료, 재시작을 편하게 하기 위하여 다음 작업을 한
다.
[root@www /conf]#cd /usr/local/apache/bin
[root@www /conf]#cp -p * /usr/bin/
[root@www2 bin]httpd -t 엔터를 두드리고 아무런 에러메세지가 없으
면 아파치 환경이 잘 설정되었다.
[root@www2 bin]# apachectl start
/usr/bin/apachectl start: httpd started 이런 메세지가 보인다면 아
파치가 정상적인 실행이 된 것이다.
12. Test 하기
– php 연동 확인
[root@www /conf]#vi /usr/local/apache/htdocs/test.php
에디터 창에서 다음내용을 입력한다.
저장을 하고 브라우저에서 http://localhost/test.php 를 입력하여 어떤
내용이 출력되는지 본다.
다음과 같은 내용이 출력된다면 정상적으로 설치가 잘 되었다.
PHP Version 4.0.1pl2
System Linux www.rotaract.or.kr 2.2.16-3 #1 Mon Jun 19 19:11:44 EDT
2000 i686 unknown
Build Date Aug 20 2000
Configure Command ‘./configure’ ‘–with-mysql=/usr/local/mysql’ ‘–
with-apache=../apache_1.3.14′ ‘–enable-track-vars’ ‘–with-config-
file-path=/usr/local/apache/conf’ ‘–with-mod-charset’ ‘–with-
language=korean’ ‘–with-charset=euc_kr’ ‘–disable-debug’ ‘–with-
xml’ ‘–enable-magic-quotes’
Server API Apache
Virtual Directory Support disabled
Configuration File (php.ini) Path /usr/local/apache/conf
ZEND_DEBUG disabled
Thread Safety disabled
This program makes use of the Zend scripting language engine:
Zend Engine v1.0.1, Copyright (c) 1998-2000 Zend Technologies
출력화면 내용은 아래로도 계속 있다.
mysql과 정상적인 연동이 되면 다음화면을 볼 수 있을 것이다.
mysql
MySQL Support enabled
Active Persistent Links 0
Active Links 0
Client API version 3.22.32
MYSQL_INCLUDE
MYSQL_LFLAGS
MYSQL_LIBS
– tomcat 연동 확인브라우저에서 http://localhost:8080 를 입력하여 tomcat 화면이 뜨고,
각종 예제 파일이 작동하면, 정상적인 것이다.
13. 시스템 부팅시 자동 데몬화
/etc/rc.d/rc.local 파일을 열어서 마지막 줄에 다음 명령을 입력한다.
/usr/local/apache/bin/apachectl start
/usr/local/mysql/share/mysql/mysql.server &
/usr/local/jakarta/bin/startup.sh
또는 다음과 같이 할 수도 있다.
[root@www2 bin]# cp -p /usr/bin/apachectl /etc/rc.d/init.d/httpd
[root@www2 bin]# cp -p /usr/bin/mysql.server /etc/rc.d/init.d/mysql
[root@www2 bin]# cd /etc/rc.d/rc3.d
[root@www2 rc3.d]# ln -s /etc/rc.d/init.d/httpd S85httpd
[root@www2 rc3.d]# ln -s /etc/rc.d/init.d/mysql S90mysql
/etc/rc.d/rc.local 파일을 열어서 마지막 줄에 다음 명령을 입력
/usr/local/jakarta/bin/startup.sh
[root@www2 rc3.d]#reboot 리부팅을 시켜 잘 실행이 되는지 확인하자.