본문으로 건너뛰기

CentOS 5.x에서 APM 컴파일 설치는 어떻게 하나요?

💡 요약 정리

  • CentOS 5.x(64bit) 환경에서 APM (Apache, PHP, MySQL)을 소스 컴파일 설치합니다.
  • 설치 순서는 MySQL → Apache → PHP 순이며, 필요한 라이브러리는 yum으로 설치합니다.
  • 각 APM 컴포넌트의 설치 및 설정 단계에 따라 명령어와 설정을 순차적으로 실행해야 합니다.
  • PHP와 Apache 연동, Zend Optimizer 설정까지 포함되어 있습니다.

1. 설치 환경 및 설치 순서 안내

  • CentOS 5.x (64bit)
  • Apache 2.2.23: 설치 위치 /home/APM/apache
  • PHP 5.2.17: 설치 위치 /home/APM/php
  • Zend Optimizer: 설치 위치 /home/APM/php/lib
  • MySQL 5.1.59: 설치 위치 /home/APM/mysql
  • 각종 라이브러리

설치 순서는 일반적으로 다음과 같습니다:

  1. MySQL → 2. Apache → 3. PHP

2. APM 설치 단계별 절차

2-1. 라이브러리 설치

필수 라이브러리를 yum으로 설치합니다.

[root@cafe24 ~]# yum install arp* bzip2* compat-gcc* curl* expat* flex* freetype* gcc* gd* gdbm* glibc* krb5* libc-client* libidn* libjpeg* libmcrypt* libpng* libtermcap* libtiff* libtool* libxml* mhash* ncurses* openssl* pcre* php-ncurses termcap zlib*

2-2. MySQL 설치 및 설정

① MySQL 설치

[root@cafe24 src ]# useradd -M -s /bin/false mysql

[root@cafe24 src ]# tar zxvf mysql-5.1.59.tar.gz
[root@cafe24 src ]# cd mysql-5.1.59
[root@cafe24 mysql-5.1.59]# ./configure --prefix=/home/APM/mysql --with-mysqld-user=mysql --with-readline --without-debug --enable-shared --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=all --with-big-tables --enable-thread-safe-client --with-named-thread-libs=-lpthread --with-plugins=myisam,innobase,archive,csv,partition --with-ssl
[root@cafe24 mysql-5.1.59]# echo $?
0
[root@cafe24 mysql-5.1.59]# make
[root@cafe24 mysql-5.1.59]# echo $?
0
[root@cafe24 mysql-5.1.59]# make install
[root@cafe24 mysql-5.1.59]# echo $?
0
※ 트러블슈팅: 아래 오류가 발생한 경우

/bin/rm: cannot remove 'libtoolT': No such file or directory

다음 명령어를 configure 전에 실행합니다.

# autoreconf --force --install
# aclocal
# libtoolize --automake --force
# automake --force --add-missing

② MySQL 초기환경 설정

[root@cafe24 ~]# cd /home/APM/mysql/bin
[root@cafe24 bin]# ./mysql_install_db
[root@cafe24 mysql]# cd /home/APM/mysql/share/mysql
[root@cafe24 mysql]# chmod 700 mysql.server
[root@cafe24 mysql]# cp -ap ./mysql.server /usr/bin
[root@cafe24 mysql]# cp -ap ./mysql.server /etc/rc.d/init.d/mysql
[root@cafe24 mysql]# chown -R mysql.mysql /home/APM/mysql
[root@cafe24 mysql]# cp my-huge.cnf /etc/my.cnf

③ MySQL 부팅 자동 실행 및 명령어 PATH 추가

[root@cafe24 ~]# vi /etc/rc.local
/etc/rc.d/init.d/mysql start
[root@cafe24 ~]# vi /root/.bash_profile
PATH=$PATH:$HOME/bin:/home/APM/mysql/bin
export PATH
[root@cafe24 ~]# source /root/.bash_profile
[root@cafe24 ~]# mysql

2-3. Apache 설치 및 설정

① Apache MPM 변경

[root@cafe24 ~]# tar zxvf httpd-2.2.23.tar.gz
[root@cafe24 src]# cd httpd-2.2.23/server/mpm/prefork
[root@cafe24 prefork]# vi prefork.c
#define DEFAULT_SERVER_LIMIT 2048
[root@cafe24 prefork]# vi ../worker/worker.c
#define DEFAULT_SERVER_LIMIT 256

② Apache 빌드 및 설치

[root@cafe24 prefork]# cd ../../..
[root@cafe24 httpd-2.2.23]# ./configure --prefix=/home/APM/apache --with-mpm=prefork --enable-mods-shared=most --with-ssl --enable-ssl --with-included-apr
[root@cafe24 httpd-2.2.23]# echo $?
0
[root@cafe24 httpd-2.2.23]# make
[root@cafe24 httpd-2.2.23]# echo $?
0
[root@cafe24 httpd-2.2.23]# make install
[root@cafe24 httpd-2.2.23]# echo $?
0

③ mod_url 설치

[root@cafe24 src]# tar xjvf mod_url-apache2-1.16.tar.bz2
[root@cafe24 src]# cd mod_url-apache2
[root@cafe24 mod_url-apache2]# /home/APM/apache/bin/apxs -iac mod_url.c
httpd.conf 설정
[root@cafe24 mod_url-apache2]# vi /home/APM/apache/conf/httpd.conf
LoadModule redurl_module modules/mod_url.so

<IfModule mod_url.c>
    CheckURL On
</IfModule>

2-4. Apache 시작 및 부팅 시 자동 실행

[root@cafe24 src]# vi /root/.bash_profile
PATH=$PATH:$HOME/bin:/home/APM/mysql/bin:/home/APM/apache/bin
[root@cafe24 src]# vi /etc/rc.local
/home/APM/apache/bin/apachectl start
[root@cafe24 src]# apachectl start
[root@cafe24 src]# ps -ef

2-5. PHP 설치

[root@cafe24 src]# tar zxvf php-5.2.17.tar.gz
[root@cafe24 src]# cd php-5.2.17
[root@cafe24 php-5.2.17]# ./configure --prefix=/home/APM/php --with-mysql=/home/APM/mysql --with-apxs2=/home/APM/apache/bin/apxs --with-config-file-path=/home/APM/apache/conf --with-mcrypt --with-mhash --with-png-dir=/usr/lib --with-zlib-dir=/usr/lib --with-gdbm=/usr/lib --with-gif-dir=/usr/local/lib --with-iconv --with-libidn=/usr/local --with-freetype-dir=/usr --with-jpeg-dir=/usr --enable-mod-charset--with-language=korean --with-charset=euc_kr --with-imap-ssl --with-gettext --with-ldap --with-ttf --with-kerberos --with-curl --with-imap --with-db --with-png --with-zlib --with-xml --with-idn --with-gd --enable-exif --enable-trans-sid --enable-wddx --enable-magic-quotes --enable-calendar --enable-sockets --enable-ftp --enable-gd-imgstrttf --enable-bcmath --enable-force-cgi-redirect --enable-track-vars=yes --enable-mbstring --enable-mbregex --enable-mbstr-enc-trans --enable-sigchild --enable-idn --enable-sockets --enable-dbx --enable-dbase --enable-force-cgi-redirect --enable-bcmath --disable-debug --enable-module=so
[root@cafe24 php-5.2.17]# echo $?
0
[root@cafe24 php-5.2.17]# make
[root@cafe24 php-5.2.17]# echo $?
0
[root@cafe24 php-5.2.17]# make install

2-6. php.ini 복사 및 설정

[root@cafe24 php-5.2.17]# cp php.ini-dist /home/APM/apache/conf/php.ini
[root@cafe24 php-5.2.17]# vi /home/APM/apache/conf/php.ini
short_open_tag = On
register_globals = On
upload_max_filesize = 12M
allow_url_fopen = Off
[root@cafe24 php-5.2.17]# ln -s /home/APM/php/bin/php /usr/bin/php

2-7. Zend Optimizer 설치

[root@cafe24 php-5.2.17]# cd /root/src
[root@cafe24 php-5.2.17]# wget http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
[root@cafe24 php-5.2.17]# tar zxvf ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
[root@cafe24 php-5.2.17]# cd ZendOptimizer-3.3.9-linux-glibc23-x86_64/data/5_2_x_comp
[root@cafe24 5_2_x_comp]# cp -ap ZendOptimizer.so /home/APM/php/lib/
[root@cafe24 php-5.2.17]# vi /home/APM/apache/conf/php.ini
[Zend]
zend_optimizer.version=3.3.9
zend_extension= /home/APM/php/lib/ZendOptimizer.so
[root@cafe24 htdocs]# php -v

2-8. Apache와 PHP 연동

[root@cafe24 src]# vi /home/APM/apache/conf/httpd.conf
<IfModule dir_module>
    DirectoryIndex index.html index.htm index.php
</IfModule>

AddType application/x-httpd-php .php4 .php .html .htm .inc
AddType application/x-httpd-php-source .phps
[root@cafe24 src]# apachectl restart

2-9. PHP 연동 확인 (phpinfo.php)

[root@cafe24 src]# vi /home/APM/apache/htdocs/phpinfo.php
<?php
    phpinfo();
?>
웹 브라우저에서 http://서버IP/phpinfo.php로 접속하여 PHP 정보 페이지가 출력되면 정상 설치된 것입니다.