리눅스/apache

apm 설치

Rohin 2014. 11. 23. 10:35
반응형

설치하려는 버전은 아래와 같습니다.

httpd 2.3.8

PHP 5.3.8

MySQL 5.5.14

 

설치를 진행하기에 앞서 아래 패키지들을 설치해줍니다.

(필수 구성 요소)
# yum -y install openssl openssl-devel mhash mhash-devel libtool libtool-ltdl libtool-ltdl-devel imap-devel imap zlib-devel zlib freetype-devel freetype libpng-devel libpng libjpeg-devel libjpeg libtiff-devel libtiff gd-devel gd pcre-devel pcre libxml-devel libxml libxml2-devel libxml2 gdbm-devel gdbm ncurses-devel ncurses curl-devel curl expat-devel expat bzip2-devel bzip2-libs bzip2 libc libc-devel libc-client-devel gcc*

 

 

[ httpd 2.3.8 ]

 

1. 다운로드

# cd /usr/local/src
# wget http://archive.apache.org/dist/apr/apr-1.4.2.tar.gz
# tar xvzf apr-1.4.2.tar.gz
# cd apr-1.4.2
   cp -arp libtool libtoolT      // libtoolT 지우지 못한다는 에러메세지 나타났지만 생략해주어도 되었음
# ./configure
   ln -s /usr/bin/libtool /          // 생략해주어도 되었음
# make
# make install

# cd ..
# wget http://archive.apache.org/dist/apr/apr-util-1.3.9.tar.gz
# tar xvzf apr-util-1.3.9.tar.gz
# cd apr-util-1.3.9
# ./configure --with-apr=/usr/local/apr
# make
# make install

 

 
2. 설치 진행
# cd /usr/local/src/httpd-2.3.8
# ./configure --prefix=/usr/local/apache --enable-modules=so --enable-mods-shared=all --enable-modules=shared --enable-ssl --enable-rewrite --with-mpm=worker --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr
# make
# make install

 

 

[ MySQL 5.5.14 ]

 

1. cmake 설치

# cd /usr/local/src

# wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz

# tar xvzf cmake-2.8.5.tar.gz

# cd cmake-2..8.5

# ./bootstrap

# make

# make install

 

 

2. 계정 생성

# groupadd -g 400 mysql
# useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql

 

 

3. MySQL 설치

# cd ..

# wget http://downloads.mysql.com/archives/mysql-5.5/mysql-5.5.14.tar.gz# tar mysql-5.5.14.tar.gz

# cd mysql-5.5.14

# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT=3306

# make

# make install

 

[참고]

euckr 로 설치를 원할 경우 옵션을 변경해줍니다.

-DDEFAULT_CHARSET=euckr -DDEFAULT_COLLATION=euckr_korean_ci

 

4. DB생성 및 기본 보안 설정

# cp -arp scripts/mysql_install_db /usr/local/mysql
# cd /usr/local/mysql

# rm -rf data

// data폴더를 지우는 이유는 기본폴더가 있긴한데 기본테이블이 없습니다.

    그대로 진행하시면 테이블이 없다며 mysql 이 구동되지 않습니다.

    때문에 data폴더를 삭제하고 아래 명령어로 재설치를 해줍니다.
# sh ./mysql_install_db

// 위 명령어로 data 폴더가 생성되지 않을 경우 아래 명령어로 생성해보세요.

    sh ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
chown -R mysql:mysql /usr/local/mysql
chown -R mysql.mysql /usr/local/mysql/data
cp support-files/my-huge.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod 700 /etc/init.d/mysqld
chown root.root /etc/init.d/mysqld
chkconfig --add mysqld
chmod 711 /usr/local/mysql
chmod 700 /usr/local/mysql/data
chmod 751 /usr/local/mysql/bin
chmod 750 /usr/local/mysql/bin/*
chmod 755 /usr/local/mysql/bin/mysql
chmod 755 /usr/local/mysql/bin/mysqldump

 

 

 

[ PHP 5.3.8 ]

 

필수 구성 요소를 설치합니다.

# cd /usr/local/src
# wget ris.smileserv.com/source/mhash-0.9.7.1.tar.gz
# tar zxvf mhash-0.9.7.1.tar.gz
# cd mhash-0.9.7.1
# ./configure
# make
# make install

# cd ..
# wget ris.smileserv.com/source/libmcrypt-2.5.7.tar.gz
# tar zxvf libmcrypt-2.5.7.tar.gz
# cd libmcrypt-2.5.7
# ./configure
# make
# make install

 

# cd /usr/local/src
# wget pub.neulwon.com/jpegsrc.v6b.tar.gz
# tar xvzf jpegsrc.v6b.tar.gz
# cd jpeg-6b

 
# cp -f /usr/share/libtool/config/config.guess .     // 덮어 쒸우기.

                                                                            // CentOS 5.6 이하 일때는 /usr/share/libtool/config.guess 에 있습니다.
# cp -f /usr/share/libtool/config/config.sub .

 
# ./configure --enable-shared --enable-static
# make
# make install

 

[참고]

아래와 같은 에러메세지가 출력될 경우

'/usr/bin/install: cannot create regular file `/usr/local/man/man1/cjpeg.1': 그런 파일이나 디렉토리가 없음' 

조치방법

makedir /usr/local/man/man1
make install
make

 

 

[참고2]

64비트 운영체제에서는 아래 심볼릭 링크 진행 해주어야 합니다.

 
ln -sf /usr/lib64/libpng12.so.0 /usr/lib/libpng12.so.0      // 이부분은 CentOS 6, fedora 15 이상에서 해당되는 내용입니다.

ln -sf /usr/lib64/libpng12.a /usr/lib/libpng12.a
ln -sf /usr/lib64/libpng.so.3 /usr/lib/libpng.so.3
ln -sf /usr/lib64/libpng.so /usr/lib/libpng.so
ln -sf /usr/lib64/libpng12.so /usr/lib/libpng12.so
ln -sf /usr/lib64/libc-client.so /usr/lib/libc-client.so
ln -sf /usr/lib64/libgssapi_krb5.so /usr/lib/libgssapi_krb5.so
ln -sf /usr/lib64/libkrb5.so /usr/lib/libkrb5.so
ln -sf /usr/lib64/libkrb5support.so /usr/lib/libkrb5support.so

 

 
 1. 설치
# cd /usr/local/src/php-5.3.8

# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --enable-mod-charset --with-config-file-path=/usr/local/apache/conf --enable-sigchild --enable-magic-quotes --with-libxml-dir --with-openssl --with-zlib --with-zlib-dir --with-bz2 --enable-calendar --with-curl --enable-dba --with-gdbm --enable-exif --enable-ftp --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-gd-native-ttf --with-gettext --with-imap --with-imap-ssl --with-kerberos --enable-mbstring --with-mhash --with-mcrypt --with-mysql=/usr/local/mysql --enable-sockets --with-regex=php --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --enable-zend-multibyte

# make
# make install
# cp php.ini-development /usr/local/apache/conf/php.ini

 

아파치 설정파일 수정

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

DirectoryIndex index.html index.htm index.php index.php3 index.php4 index.php5 index.phtml index.cgi index.jsp

 

# PHP Enable
AddType application/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc
AddType application/x-httpd-php-source .phps

 

<Directory /home/*>
    AllowOverride All
    Options +ExecCGI
    Order allow,deny
    Allow from all
</Directory>

 
 

ZendGuardLoader 설치
# cd ../ZendGuardLoader-php-5.3-linux-glibc23-x86_64/php-5.3.x
# cp -arp ZendGuardLoader.so /usr/local/php/lib/
# vi /usr/local/apache/conf/php.ini

[Zend]
zend_extension=/usr/local/php/lib/ZendGuardLoader.so

short_open_tag = On
date.timezone = Asia/Seoul 도 입력
register_globals = On

 

* ZendGuardLoader 는 아래 조건이 맞아야 설치 가능합니다.

- httpd 2.2.x 이하 버전 (prefork 방식)

- php 5.3.x 버전