centos6.8 apache2.0.x, PHP5.3 소스 컴파일 및 설치
아파치 2.0.x 버전을 소스코드로 컴파일 한 다음 빌드해보겠습니다.
먼저 필수 패키지를 설치해야 합니다.
- gcc 설치
# yum install -y gcc*
- wget 설치
# yum install wget
- libtool 설치
# yum install libtool
국내 mirror 사이트로 변경 방법
속도상의 문제와 보안상의 이유로 yum Repository 설정을 국내 mirror 사이트로 수정해 보겠습니다.
# /etc/yum.repo.d/CenOS-Base.repo
[base]
#mirrorlist=http://mirrorlist.centos.org/$releasever/os/$basearch/
baseurl=http://ftp.daumkakao.com/centos/$releasever/os/$basearch/ #다음 mirror 사이트
국내 mirror 사이트를 baseurl에 설정해 주고 mirrorlist 는 주석표시해줍니다.
- baseurl=http://centos.mirror.cdnetworks.com/$releasever/os/$basearch/
- baseurl=http://data.nicehosting.co.kr/os/CentOS/$releasever/os/$basearch/
- baseurl=http://ftp.daum.net/centos/$releasever/os/$basearch/
- baseurl=http://mirror.khlug.org/centos/$releasever/os/$basearch/
에러 발생
loaded plugins fastestmirror refresh-packagekit security
해결책
# yum update
예외. APR, APR Utility 설치
apache 2.0 버전에 맞게 ARP 0.9.19, APR Utility 0.9.19 설치
참고. ftp://ftp.deu.edu.tr/pub/Infosystem/Apache/apr/Announcement0.9.html
APR, APR-UTil 소스 위치
http://archive.apache.org/dist/apr/ 경로로 들어가서 해당 버전 설치
APR 소스 컴파일 설치
# wget http://archive.apache.org/dist/apr/apr-0.9.19.tar.gz
# tar zxvf apr-0.9.19.tar.gz
APR 컴파일 및 빌드
# cd apr-0.9.19
# ./configure --prefix=/usr/local/apr
# make
# make install
APR-UTIL 소스 컴파일 설치
# wget http://archive.apache.org/dist/apr/apr-util-0.9.19.tar.gz
# tar zxvf apr-util-0.9.19.tar.gz
APR-UTIL 컴파일 및 빌드
# cd apr-util-0.9.19
# ./configure --prefix=/usr/local/apr-util \
--with-apr=/usr/local/apr
# make
# make install
apache2.0 소스 다운로드 및 압축 해제
# wget http://archive.apache.org/dist/httpd/httpd-2.0.65.tar.gz
# tar zxvf httpd-2.0.65.tar.gz
apache2.0 컴파일 및 빌드
# cd httpd-2.0.65
# ./configure \
--prefix=/usr/local/apache \
--enable-modules=all \
--enable-mods-shared=most \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--enable-so \
--with-mpm=worker \
# make
# make install
apache 설정 수정
# cd /usr/local/apache
해당 디렉토리에 아파치가 설치된 이유는 –prefix로 준 값이 해당 경로이기 떄문입니다.
mysql 5.6 설치
# rpm -ivh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
# yum install mysql-community-server
# yum install -y mysql-devel
mysql 5.6 설치 확인
# rpm -qa *-release
mysql-community-release-el6-5.noarch
php5.3.28 소스 다운로드 및 압축 해제
# wget http://museum.php.net/php5/php-5.3.23.tar.gz
# tar -zxvf php-5.3.28.tar.gz
php5.3 컴파일 및 빌드
# cd php-5.3.28
# #! /bin/sh
# ./configure \
--prefix=/usr/local/php \
--with-mysql=/usr/bin \
--with-libdir=lib64 \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/usr/local/apache/conf \
--with-regex=php \
--with-zlib \
--disable-debug \
--enable-calendar \
--enable-ftp \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-magic-quotes \
# make
# make install
php 설치시 xml2-config not found 에러
error: xml2-config not found. Please check your libxml2 installation.
해결책
# yum install -y libxml2-devel
php5.3 make 명령어 실행 시 zend/zend_language_parser.h:317:error
/Zend/zend_language_parser.h:317: error: conflicting types for 'zendparse'
해결책
# vi Zend/zend_language_parser.h
317. int zendparse (void); // 변경전
317. int zendparse (void *compiler_globals); // 변경후
다시 make 명령어 실행하면 됩니다.
php 설정
# vi /usr/local/apache/conf/httpd.conf
DirectoryIndex index.html index.php // index.php 추가
AddType application/x-httpd-php .php .php3 .phtml .html .htm .inc // 추가
AddType application/x-httpd-php-source .phps // 추가
:wq
# service httpd restart // http 재실행
php 설정 테스트
# vi /usr/local/apache/htdos/phpinfo.php
<?php
phpinfo();
?>
:wq
localhost/phpinfo 사이트 확인하면 됩니다. 끝!