설치 환경
CentOS 6.3 64bit
MySQL 5.5.28
Apache 2.4.3
PHP 5.4.8
APM설치를 위한 사전 요구사항
필수 패키지 설치
# yum -y install pcre-devel lua-devel libxml2-devel ncurses-devel zlib zlib-devel curl openssl openssl-devel libtermcap-devel libc-client-devel bison gcc g++ cpp gcc-c++ freetype freetype-devel freetype-utils gd gd-devel libjpeg libjpeg-devel libpng libpng-devel curl curl-devel flex php-mbstring libexif-devel cmake
Apache 설치를 위한 패키지 설치
1) APR (소스 설치)
* Apache 2.4.X 는 APR 1.4 이상을 필요로 합니다. CentOS 6.x yum에서는 1.3.9 패키지를 사용함으로 소스를 컴파일해서 설치.
# cd /usr/local/src
# wget http://mirror.apache-kr.org//apr/apr-1.4.6.tar.gz
# tar xvfz apr-1.4.6.tar.gz
# cd apr-1.4.6
# ./configure --prefix=/usr/local/apr-1.4.6
[./configure 시 에러출력]
config.status: executing libtool commands
rm: cannot remove `libtoolT': No such file or directory
config.status: executing default commands
config.status: include/apr.h is unchanged
config.status: include/arch/unix/apr_private.h is unchanged
위와 같은 에러 출력시 아래처럼 파일을 복사해주고 진행을 계속 합니다.
# cp -arp libtool libtoolT
# make && make install
[make시 에러 출력]
make[1]: Entering directory `/usr/local/src/APM_setup/apr-1.4.2'
/bin/sh /libtool --silent --mode=compile gcc -g -O2 -pthread -DHAVE_CONFIG_H -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -I./include -I/usr/local/src/APM_setup/apr-1.4.2/include/arch/unix -I./include/arch/unix -I/usr/local/src/APM_setup/apr-1.4.2/include/arch/unix -I/usr/local/src/APM_setup/apr-1.4.2/include -o passwd/apr_getpass.lo -c passwd/apr_getpass.c && touch passwd/apr_getpass.lo
/bin/sh: /libtool: No such file or directory
make[1]: *** [passwd/apr_getpass.lo] Error 127
make[1]: Leaving directory `/usr/local/src/APM_setup/apr-1.4.2'
make: *** [all-recursive] Error 1
위와 같은 에러가 나온다면 아래처럼 심볼릭 링크를 걸어주고 진행을 계속 합니다.
# ln -s /usr/bin/libtool /
# make clean
# wget http://mirror.apache-kr.org//apr/apr-util-1.4.1.tar.gz
# tar xvfz apr-util-1.4.1.tar.gz
# cd apr-util-1.4.1
# ./configure --prefix=/usr/local/apr-util-1.4.1 --with-apr=/usr/local/apr-1.4.6
# make && make install
MySQL 설치 (cmake 설치)
- 설치 위치 : /usr/local/mysql-5.5.28
- 데이타 위치 : /mysql/data
1. MySQL (http://www.mysql.com/downloads/mysql/)
# cd /usr/local/src/
# tar xvfz mysql-5.5.28.tar.gz
2. User 및 디렉토리 생성
# adduser -M -s /bin/false mysql
# mkdir -p /mysql/data /mysql/log
# chown mysql.mysql data
# chown mysql.mysql log
3. 소스 컴파일
- 운영상의 편의성을 위해 설치 경로명에 버전을 같이 명기
- 설치 옵션은 http://dev.mysql.com/doc/mysql-sourcebuild-excerpt/5.5/en/source-configuration-options.html 참조
- CharSet 관련 설정은 http://dev.mysql.com/doc/refman/5.5/en/extended-show.html 참조
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.28 -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=euckr \
-DDEFAULT_COLLATION=euckr_korean_ci -DWITH_EXTRA_CHARSETS=all
# make && make install
(UTF8 설정시 옵션)
-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
4. 심볼릭 링크 생성
# ln -s /usr/local/mysql-5.5.28 /usr/local/mysql
5. 환경 설정
1) 권한 설정
# cd /usr/local
# chown -R mysql.mysql ./mysql-5.5.28
# chown -R mysql.mysql /mysql
2) 스크립트 구동
# cd /usr/local/mysql
# ./scripts/mysql_install_db --user=mysql --datadir=/mysql/data
6. my.cnf
1) 시스템 메모 크기에 따른 /usr/local/mysql/support-file 밑에 아래 설정 화일을 /etc/my.cnf 로 복사합니다.
- 64M 이하 : my-small.cnf
- 65M ~ 256M : my-medium.cnf
- 512M : my-large.cnf
- 1G ~ 2G : my-huge.cnf
2) my.cnf를 시스템에 맞게 설정합니다.
7. 구동
1) MySQL server 구동
# cp -av /usr/local/mysql-5.5.28/support-files/mysql.server /etc/init.d/mysqld
# /etc/init.d/mysqld start
*구동시 아래 에러 발생시 조치방법*
증상) MySQL: Starting MySQL….. ERROR! The server quit without updating PID file
해결방안) http://icesquare.com/wordpress/mysql-starting-mysql-error-the-server-quit-without-updating-pid-file/ 사이트 참조
2) 암호 설정
# ./bin/mysqladmin -u root password <new-password> (<- 괄호없이 비번만 입력)
3) 접속 테스트
# mysql -p mysql
mysql> 나오면 성공
8. 자동 구동 설정
# vi /etc/rc.d/init.d/mysqld
- 아래 부분 수정
basedir=/usr/local/mysql
datadir=/mysql/data
# chkconfig --add mysqld
Apache 설치
1. Apache (http://httpd.apache.org/download.cgi)
# cd /usr/local/src/httpd-2.4.3
# ./configure --prefix=/usr/local/httpd-2.4.3 --enable-so --with-mpm=worker --enable-cache --with-apr=/usr/local/apr-1.4.6 --with-apr-util=/usr/local/apr-util-1.4.1 --enable-ssl --with-ssl=/usr --enable-rewrite
- 여기 사용된 옵션은 아파치 웹 서버의 성능을 높히기 위한 것으로써 아래 문서를 참고.
http://httpd.apache.org/docs/2.4/mod/worker.html
http://httpd.apache.org/docs/2.4/mod/mod_cache.html
# make && make install
# ln -s /usr/local/httpd-2.4.3 /usr/local/apache2
PHP 설치
# wget http://kr1.php.net/get/php-5.4.8.tar.gz/from/this/mirror
# tar xvfz php-5.4.8.tar.gz
# cd php-5.4.8.tar.gz
# ./configure --prefix=/usr/local/php-5.4.8 --with-apxs2=/usr/local/httpd-2.4.3/bin/apxs --with-mysql=/usr/local/mysql-5.5.28 --with-config-file-path=/usr/local/httpd-2.4.3/conf --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib=/usr --enable-mbstring --enable-exif
# make && make install
apache 추가 환경설정
# vi httpd.conf
- 아래 부분 삽입
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule>
- 아래 주석 해제 및 삽입
<IfModule mime_module>
AddType application/x-httpd-php .php .htm .html .inc .php4 .php3
AddType application/x-httpd-php-source .phps
</IfModule>
PHP 환경설정
# cd /usr/local/src/php-5.4.8
# cp php.ini-production /usr/local/httpd-2.4.3/conf/php.ini
# cd /usr/local/httpd-2.4.3/conf
# vi php.ini
openssl 환경 설정
# vi ./conf/httpd.conf
#ServerName www.example.com:80 의 아래에
ServerName 127.0.0.1 을 입력한다.
DocumentRoot "설치된경로/htdocs" 라고 되어있는 부분에 웹서비스할 디렉토리 경로를 입력하자.
LoadModule ssl_module modules/mod_ssl.so 가 있는지 확인하자. 없다면 SSL이 활성화되지 않은
것이다.
활성화 부분이 주석처리 되어 있다면 주석을 제거하자. ( # 으로 시작하는 라인은 주석이다. #을 제거 )
#include conf/extra/httpd-ssl.conf 부분을 찾아 # 를 제거하자. SSL 설정파일이다.
# vi ./conf/extra/httpd-ssl.conf
Listen 443 은 httpd.conf 의 Listen 80 과 같은 내용이다.
http 는 80번 포트로, https 는 443 포트로 접속된다. 방화벽 설정이 되어있다면 443 포트를 열어주자.
<VirtualHost_default_:433> 안 에 있는 설정들을 수정해야한다.
DocumentRoot 는 httpd.conf 와 같으면 된다.
ServerName 에는 127.0.0.1:443 으로 해주자.
SSLCertificateFile 에는 우리가 생성했던 인증서를 연결시켜줘야한다.
예) SSLCertificateFile "/web/ssl-key/ssl2010.crt"
SSLCertificateKeyFile 은 암호키
예) SSLCertificateKeyFile "/web/ssl-key/ssl2010.key"
그외...
Jk (mod-jk.so) 를 이용하여 Tomcat 과 연동하는 경우는
<VirtualHost_default_:433> 안 에도 JkMount 를 써주면 되겠다.
예) JkMount /- ajp13
Apache 자동 구동 설정
# cd /usr/local/httpd-2.4.3/bin
# cp apachectl /etc/rc.d/init.d/httpd
- Apache Config test
# /etc/rc.d/init.d/httpd configtest
- Apache Start
# /etc/rc.d/init.d/httpd start
댓글 없음:
댓글 쓰기