Apache+jdk+jserv+php+mysql 연동

  최적의 개발환경을 위한 솔루션(?)을 발표한다는 느낌이 사뭇 쑥쑤럽기만하네요.

  우선 소스는 다음과 같습니다.(2000.6.15일 기준)

  jdk1_2_2-linux-i386.tar.gz

  jsdk20-solaris2-sparc.tar.Z

  mysql-3.22.32.tar.gz

  apache_1.3.12.tar.gz

  php-4.0.0.tar.gz

  ZendOptimizer-Beta4-Linux-glibc2.1.tar.gz

  ApacheJServ-1.1.1.tar.gz

  squid-2.3.STABLE3-src.tar.gz

  위의 내용을 보시면 아시겠지만 자바관련툴과 DBMS 인 MySQL, 웹서버인 Apache, Script

  언어인 PHP,

  Php 속도향상을 위한

  Zend Optimizer, Servlet 구현을 위한 Apache Jserver, 속도향상을 위한 캐쉬 Squid 입니다.

  우선 설치하는 순서는 개략적으로 다음과 같습니다.

  * Jdk -> Jsdk -> MySQL -> Apache #1 -> Php -> Zend Optimizer

  -> Apache Jserver -> Apache final -> Squid

  복잡해 보이지만 제가 인도하는 대로 따라오시면 재미있고 신기한 리눅스환경이 만들어

집니다.

   음.. 아!! 운영체제를 말씀을 안드렸네요…

   얼마전에 세미나에 참석해서 얻은 Wow-Linux 입니다.

   Kernel 은 2.3.14 더라구요.. 2.3.15 를 포함해서.. 하위버젼에 치명적인 버그가

있다지요??

   암튼.. 그건 그거고.. 먼저 Jdk 를 깔아보겠습니다.

   아 그리고.. 모든 소스는 /usr/local/src 디렉토리에 넣으세요!!

   소스관리차원에서 한곳에 넣어두는 것이 최상입니다.

   *****************

   *** Jdk 1.2.2 ***

   **************************************************************************

   우선 압축을 풉니다.

   > tar xvfz jdk1_2_2-linux-i386.tar.gz

   그리고.. 이건 압축을 푼 디렉토리를 다른곳으로 옮깁니다.

   > mv jdk1_2_2 /usr/local/

   이렇게 하면 /usr/local/jdk1_2_2 가 생깁니다.

   차후 jdk 업그레이드를 고려해서 소프트링크를 걸어놉니다.

   > ln -s /usr/local/jdk1_2_2 java

   이러면 /usr/local/jdk1_2_2 는 /usr/local/java 와 같게됩니다.

   사실 같은것이 아니라 /usr/local/java 는 /usr/local/jdk1_2_2 의 링크가

   되는 것입니다. 아시죠?? 윈도우즈의 단축아이콘.. 그런겁니다.

   그리고.. 모든 사용자들의 공통적인 profile 인 /etc/profile 을 수정합니다.

   > vi /etc/profile 하시고..

   다음을 추가하세요…

   어디에 추가하면요… PATH=”….” 어쩌구 하는 곳 다음줄입니다.

   PATH=”$PATH:/usr/local/java/bin”

   그리고 아래 문장은 export PATH … 어쩌구 하는 다음줄에 하시고요…

   export JAVA_HOME=”/usr/local/java”

   export CLASSPATH=”.”

   (저장후 종료)   여기까지.. jdk 설치가 끝난겁니다.. 잘 되었는지 확인방법은 다시 로그인

하신후에..

   java -version 해보세요..

   잘되죠?? 그럼 ok!!!!!!!!!

   다음 JSDK 입니다.

   ****************

   *** Jsdk 2.0 ***

   **************************************************************************

   다시 /usr/local/src 로 디렉토리를 바꾸고..

   > cd /usr/local/src

   Jsdk 파일을 압축을 풉니다.. 어!! 그런데.. 이건 Sun Solaris 용이 아니냐구요??

   상관없답니다. 이미 검증이 되었답니다. 지금도 2.1이 나왔긴 한데.. 리눅스에서는

   아직 검증이 안되었답니다. 맞죠???

   > tar xvfz jsdk20-solaris2-sparc.tar.Z

   그리고.. 압축을 푼 디렉토리역시.. /usr/local 밑으로 옮깁니다.

   > mv JSDK20 /usr/local/

   그리고 또다시 업그레이드를 대비해서.. 소프트링크를 설정합니다.

   > ln -s /usr/local/JSDK20 JSDK

   그리고.. 또다시.. 모두에게 적용되는 /etc/profile 을 수정합니다.

   > vi /etc/profile

   하신후에.. 다음을 추가합니다. 어디냐구요?? 흠.. PATH=.. 어쩌구하는 부분 아래에..하시면

됩니다.

   PATH=”$PATH:/usr/local/JSDK”

   아래줄은 위의 jdk 를 설치할때 기술했던 부분인데.. 수정하시는 겁니다.

   :/usr/local/JSDK/lib/jsdk.jar 가 추가되었죠..

   export CLASSPATH=”.:/usr/local/JSDK/lib/jsdk.jar”

   (저장후 종료)

   여기까진 Jsdk 설치가 끝난것입니다. 그럼이젠 여러분은 JDK와 JSDK 툴을 사용하실 수

   있을것입니다.

   다음으로 공개용 DBMS인 MySQL 을 설치해보도록 하겠습니다.

   *************

   *** MySQL ***

   **************************************************************************

   다시 /usr/local/src 로 디렉토리를 바꾸고..

   > cd /usr/local/src

   압축을 풉니다.

   > tar xvfz mysql-3.22.32.tar.gz

   다음에 디렉토리를 이동합니다.

   > cd mysql-3.22.32

   글구.. 아래와 같이.. compile install 환경을 맞춥니다.

   > ./configure \\

      –prefix=/usr/local/mysql \\

      –with-charset=euc_kr \\

      –with-unix-socket-dir=/usr/local/mysql/sock/socket.mysql \\

      –localstatedir=/mysqldb

   위의 환경을 설명하자면..

   –prefix=/usr/local/mysql : 설치되는 디렉토리는 /usr/local/mysql 이고..

   –with-charset=euc_kr : 사용하는 언어환경은 한국어이고요..

   –with-unix-socket-dir : 소켓정보파일을 /usr/local/mysql/sock/socket.mysql 로

   지정생성하겠다는

   것입니다.

      이 부분을 기술하지 않으면.. 당연히 /tmp/(디폴트 소켓이름) 으로 사용됩니다.

(옵션!!!! 알죠???)

   –localstatedir=/mysqldb : 이것은 데이타베이스파일을 어디에다가 생성할것인지

지정해주는

   것입니다.

   (옵션!!)

   위의 환경이 잘 수행되었다면… 아래와 같이. 컴파일을 한후에.. 설치를 합니다.

   > make

   > make install

   음.. 잘 끝났죠…

   그리고.. 기본적인 데이타베이스와 테이블을 생성해야 합니다.

   /usr/local/mysql 로 디렉토리를 이동하시고..

   > cd /usr/local/mysql

   기본 데이타베이스를 생성합니다.

   > ./bin/mysql_install_db

   그리고.. 데이타베이스를 구동합니다.

   > ./bin/safe_mysqld –language=korean &

   아주 잘되죠.. ^^

   그리고.. 아래와 같이.. admin 암호를 지정합니다. 이거 한번 지정하면.. 고치기

여려우니깐..

   신중하게 하세요.. 제가 고치는 방법을 몰라서.. 어려운 건가?? 암튼.. 이거 다쓰고.. 알아

볼거예요…

   > ./bin/mysqladmin -u root password ‘rootpass’

   잘되었는지.. 확인하는 방법은

   > ./bin/mysql -u root -p

   하시고.. password : 라고 나오면.. 지정한 암호를 입력한후에.. 엔터를 칩니다..

   그러면..

   Enter password:

   Welcome to the MySQL monitor.  Commands end with ; or \\g.

   Your MySQL connection id is 4 to server version: 3.22.32

   Type ‘help’ for help.

   mysql>

   위와 같이 나옵니다.. 성공이죠..

   mysql> show databases; 하면.. 2줄 나오죠??

   mysql> use mysql;

   mysql> show tables;

   그럼 쭈욱 나옵니다..

   잘 되었네요…. ^^ 그럼.. 이걸.. 편리하게.. 구동하고. 정지하는걸 알아볼까요???

   > cp /usr/local/mysql/support-files/mysql.server /usr/bin/

   이라고 한후..

   > chmod 755 /usr/bin/mysql.server

   > vi /usr/bin/mysql.server 라고 한후

   $bindir/safe_mysqld –user=$mysql_daemon_user –pid-file=$pid_file

   –datadir=$datadir &

   위의 줄을 아래와 같이 바꿉니다. –language=korean 이 추가되었죠?? ^^

   $bindir/safe_mysqld –language=korean –user=$mysql_daemon_user

   –pid-file=$pid_file

   –datadir=$datadir &

   다음에 저장한고 나온후 테스트를 해봅니다.

   > mysql.server stop (정지시)

   > mysql.server start (구동시)

   아주 쉽죠… ^^

   그리고 다음은 이제.. Apache 설치 #1 입니다. 왜?? #1 이냐구요??? 나중에 또 본격설치를

   하니깐요.. ^^

   *****************

   *** Apache #1 ***

   **************************************************************************

   다시 /usr/local/src 로 디렉토리를 바꾸고..

   > cd /usr/local/src

   압축을 풉니다.

   > tar xvfz apache_1.3.12.tar.gz

   디렉토리를 이동하고요..

   > cd apache_1.3.12

   아래와 같이 실행합니다.

   > ./configure

   이걸로 여기선 끝… ^^ 아~~~ 쉽다..

   다음으론.. PHP를 설치해보도록 하겠습니다.

   그런데 여기서 주의깊게 볼것은.. 아파치를 DSO 지원지원으로 설치하는 것이 아니라..

   아파치와 함께 구동될 모듈들을 아예 아파치에 오브젝트를 포함시킬것입니다.

   이유는 퍼포먼스입니다.. 이렇게 해서 설치할 것이.. PHP, Jserv 입니다.

   ***************

   *** Php 4.0 ***

   **************************************************************************

   다시 /usr/local/src 로 디렉토리를 바꾸고..

   > cd /usr/local/src

   압축을 풉니다.

   > tar xvfz php-4.0.0.tar.gz

   다음에 디렉토리를 옮겨버립니다.

   > mv php_4.0.0 /usr/local/php_4.0.0

   다음은 소프트링크를 만듭니다. 왜냐면.. 업그레이드를 위해서죠.. ^^

   > ln -s /usr/local/php_4.0.0 php

   다음으로 디렉토리를 이동하고

   > cd /usr/local/php

   다음과 같이 설정합니다.

   > ./configure \\

      –with-apache=/usr/local/src/apache_1.3.12 \\

      –with-mysql=/usr/local/mysql \\

      –with-oracle=/oracle/8i \\

      –with-oci8i=/oracle/8i \\

      –with-track-vars \\

      –enable-sigchild \\

      –disable-debug

   위의 설정을 해설하자면..

   –with-apache=/usr/local/src/apache_1.3.12 : 아파치 컴파일설치시에

포함시킬것이기때문에

      어디에 아파치 소스가 있는지 지정해준다.

   –with-mysql=/usr/local/mysql : MySQL 이 설치된 디렉토리를 지정해준다. 이유는 MySQL

   모듈을

      포함하기 위해섭니다.

   –with-oracle=/oracle/8i : 저는 Oracle 8i 를 설치해서 사용하고 있어서 써준것입니다.

   –with-oci8i=/oracle/8i

   –with-track-vars : track var 를 사용하는 것입니다.

   –enable-sigchild : 나중에 오라클과 PHP 가 연동이 되었을때 좀비 프로세스 방지를 위한

   조치입니다

   –disable-debug : Zend Optiimizer 가 Debug 모드를 지원하지 않기때문에 설정합니다.

   다음과 같이 해서 컴파일하고 설치합니다.

   > make

   > make install

   그리고.. php 설정파일을 다음과 같이 복사합니다.

   > cp php.ini-dist /usr/local/lib/php/ini

   PHP 4.0 을 설치했으니.. 퍼포먼스좀 높여볼까요… 그럼.. Zend Optiomizer 를

설치하셔야죠..

   **********************

   *** Zend Optimizer ***

   **************************************************************************

   다시 /usr/local/src 로 디렉토리를 바꾸고..

   > cd /usr/local/src

   압축을 풉니다.

   > tar xvfz ZendOptimizer-Beta4-Linux-glibc2.1.tar.gz

   그리고 압축을 푼 디렉토리로 이동합니다.

   > cd Zend*

   설치할 디렉토리를 만듭니다.

   > mkdir /usr/local/Zend

   > mkdir /usr/local/Zend/lib

   파일을 복사합니다.

   > cp /usr/local/src/ZendOptimizer-Beta4-Linux-glibc2.1/ZendOptimizer.so

   /usr/local/Zend/lib/

   PHP 에 Zend Optimizer 모듈 인식을 위해..다음 파일을 편집합니다.

   > vi /usr/local/lib/php.ini

   다음을 추가합니다.

   zend_optimizer.optimization_level=7

   zend_extension=”/usr/local/Zend/lib/ZendOptimizer.so”

   (저장후 종료)

   여기까진.. 일단 끝이죠.. ^^

   이젠 Apache Jserver 를 설치해볼까요…

   ***************

   *** Jserver ***

   **************************************************************************

   다시 /usr/local/src 로 디렉토리를 바꾸고..

   > cd /usr/local/src

   압축을 풉니다.

   > tar xvfz ApacheJServ-1.1.1.tar.gz

   압축을 푼 디렉토리로 이동합니다.

   > cd Apache*

   자 그럼.. 아래와 같이 설정 파일을 셋팅합니다.

   > ./configure \\

      –prefix=/usr/local/jserv \\

      –disable-debugging \\

      –with-apache-src=/usr/local/src/apache_1.3.12

   위의 설정 파일을 설명해볼까요..

   –prefix=/usr/local/jserv : Jserver 를 설치할 디렉토리

   –disable-debugging : 역시 debug 금지네요…

   –with-apache-src=/usr/local/src/apache_1.3.12 : 이거역시..아파치설치시에

      모듈을 포함시키기위해섭니다.

   컴파일하고 설치합니다.

   > make

   > make install

   다음 파일을 편집합니다.

   > vi /usr/local/apache/conf/httpd.conf

   아래를 추가합니다.

   AddType application/x-httpd-php .phtml

   AddType application/x-httpd-php .html

   AddType application/x-httpd-php .htm

   AddType application/x-httpd-php .php4

   그리고 이 아래줄은 맨 아래에 추가합니다.

   include /usr/local/apache/conf/jserv/jserv.conf

   (저장후 완료)

   음.. 그러면.. 이젠… 아파치를 완벽하게 설치해볼까요…

   다시 /usr/local/src/apach* 로 이동합니다.

   > cd /usr/local/src/apache*

   그다음은 아래와 같이..

   > ./configure \\

      –prefix=/usr/local/apache \\

      –activate-module=src/modules/php4/libphp4.a \\

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

   위의 내용은

   –prefix=/usr/local/apache : 설치할 디렉토리

   –activate-module=src/modules/php4/libphp4.a : 포함할 모듈

   –activate-module=src/modules/jserv/libjserv.a : 포함할 모듈

   다음은 아래와 같이..

   > make

   > make install

   > killall httpd

   > cd /usr/local/apache

   > ./bin/apachectl restart

   > vi ./htdocs/test.php4

  

   (저장후 종료)

   –> PHP 확인 >>>>>  Netscape 에서 http://(hostip)/test.php4 를

확인한다.

   Zend Optimizer 는 Php 로고 그림 왼쪽에.. with Zend Optimizer 라는 글로 확인!!!

   –> Jserv 확인 >>>  Netscape 에서 http://(hostip)/servlets/Hello 를

확인한다.

서진우

슈퍼컴퓨팅 전문 기업 클루닉스/ 상무(기술이사)/ 정보시스템감리사/ 시스존 블로그 운영자

You may also like...

2 Responses

  1. 2022년 6월 18일

    2dysentery

  2. 2023년 1월 26일

    2liberal

페이스북/트위트/구글 계정으로 댓글 가능합니다.