리눅스

우분투에서 APM을 소스 코드 기반으로 설치하는 방법

변군이글루 2015. 3. 2. 14:35
반응형

우분투에서 APM(Apache + MySQL + PHP)을 소스 코드 기반으로 설치하는 방법

Apache 2.4 소스 설치

Apache/APR 소스 다운로드

wget http://archive.apache.org/dist/httpd/httpd-2.4.12.tar.gz
wget http://archive.apache.org/dist/apr/apr-1.5.1.tar.gz
wget http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz

소스 압축 해제

tar xvfz httpd-2.4.12.tar.gz
tar xvfz apr-1.5.1.tar.gz -C httpd-2.4.12/srclib/
tar xvfz apr-util-1.5.4.tar.gz -C httpd-2.4.12/srclib/

APR 디렉토리 정리

mv httpd-2.4.12/srclib/apr-1.5.1 httpd-2.4.12/srclib/apr
mv httpd-2.4.12/srclib/apr-util-1.5.4 httpd-2.4.12/srclib/apr-util

PCRE 설치(정규식 라이브러리)

wget --ftp-user=anonymous ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
tar xvfz pcre-8.36.tar.gz
cd pcre-8.36
./configure --prefix=/usr/local/pcre
make && make install

Apache 빌드 필수 패키지

apt-get install -y libssl-dev

Apache 컴파일 및 설치

cd httpd-2.4.12

./configure \
--prefix=/app/apache \
--with-included-apr \
--with-pcre=/usr/local/pcre \
--with-ssl \
--enable-so \
--enable-ssl \
--enable-rewrite \
--with-mpm=worker \
--enable-cache \
--enable-modules=all \
--enable-mods-shared=all

make && make install

서비스 스크립트 등록

cp /app/apache/bin/apachectl /etc/init.d/httpd
728x90

MySQL 5.6 소스 설치

MySQL 소스 다운로드

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.23.tar.gz

필수 패키지 설치

apt-get install -y cmake libncurses5-dev

MySQL 전용 계정 생성

useradd -m -c "MySQL Server" -d /usr/local/mysql -s /bin/false -u 27 mysql

MySQL 컴파일 및 설치

tar xvfz mysql-5.6.23.tar.gz
cd mysql-5.6.23

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

make && make install

권한 및 초기 설정

chown mysql.root /usr/local/mysql
chown -R mysql.mysql /usr/local/mysql/data

실행 파일 링크

ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
ln -s /usr/local/mysql/bin/mysqladmin /usr/bin/mysqladmin

DB 초기화 및 실행

cd /usr/local/mysql/
./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data
mv my.cnf /etc/my.cnf
./bin/mysqld_safe &
./bin/mysqladmin -u root password 'mysql-set-password'

PHP 5.5 소스 설치

PHP 소스 다운로드

wget http://kr1.php.net/distributions/php-5.5.22.tar.gz
tar xvfz php-5.5.22.tar.gz
cd php-5.5.22

PHP 컴파일 및 설치

./configure \
--prefix=/app/php \
--with-apxs2=/app/apache/bin/apxs \
--with-config-file-path=/app/apache/conf \
--with-mysql=/usr/local/mysql \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-libdir=lib64 \
--enable-mbstring \
--enable-exif

make && make install

php.ini 설정

cp php.ini-production /app/apache/conf/php.ini

Apache + PHP 연동 설정

vim /app/apache/conf/httpd.conf
<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php .html
AddType application/x-httpd-php-source .phps

PHP 동작 확인

echo "<?php phpinfo(); ?>" > /app/apache/htdocs/phpinfo.php

브라우저 접속

http://서버IP/phpinfo.php

 

참고URL

- http://forum.falinux.com/zbxe/index.php?document_srl=627832&mid=lecture_tip

 

728x90
반응형