본문 바로가기
프로그램

apache 2.2.25 와 PHP 5.2.17 구버전 컴파일 설치 운영

by Dog_발자 2022. 11. 12.
반응형

아파치와 php를 yum을 이용하여 자동 설치하지 않고 컴파일로 설치하는 이유는 관리적 차원이 아닌가 싶습니다. 서버의 이상으로 웹소스를 이전해야 할 경우가 발생했을 때 기존 아파치 서버와 같은 환경으로 세팅하기에는 컴파일 소스가 최선이기 때문입니다. 또한 컴파일 설치의 경우 원하는 옵션을 지정할 수 있어 서버의 효율정 운영이 가능합니다.

 

Apache 2.2.25 컴파일 설치

1. 자동 설치된 아파치와 php 제거 

아파치 컴파일 설치 전 자동설치된 아파치와 php 가 있는지 확인
자동 설치된 아파치와 PHP 가 있다면 컴파일 설치하는 것과 충돌이 일어날 수 있습니다. 꼭 자동 설치되어 있지 확인하시고 있다면 해당 package를 삭제하여 주세요.

 

#> yum list installed | grep php*
#> yum list installed | grep http*
#> yum remove 삭제할package명

2. Apache 2.2.25 컴파일 설치 전 기본 package 설치

아파치와 PHP 를 설치하기 전 기본적으로 필요한 패키지들을 설치해 놓는다면 설치 시 발생하는 오류가 적을 수 있습니다. 

#> yum 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  libexif-devel cmake php-mbstring

3.  Centos 7 에서 Apache 2.2.25 컴파일 설치 

1.  아파치 파일 다운로드 

1. /usr/local/src 폴더로 이동합니다.  ( 각종 잡다한 파일들 모아두는 폴더 )
#>cd /usr/local/src

2. wget 으로 아파치 2.2.25 파일을 다운로드 합니다.
#>wget http://archive.apache.org/dist/httpd/httpd-2.2.25.tar.gz

3. 다운로드한 아파치파일을 압축해제합니다. 
#>tar xzfp ./httpd-2.2.25.tar.gz

4. 압축이 해제된 아파치 폴더로 이동합니다. 
#>cd ./httpd-2.2.25

2.  아파치 컴파일 및 설치

#>./configure \
--prefix=/usr/local/apache \ 
--enable-so \ 
--enable-rewrite \
--enable-mods-shared=all \
--enable-modules=shared \
--with-mpm=prefork \
--enable-lib64 \
--libdir=/usr/lib64 \
--with-included-apr

#>make && make install

아파치의 운영방식에는 worker 방식과 prefork 방식이 있습니다. 위 아파치의 운영은 --with-mpm=prefork 방식으로 설치하였습니다. 또한 설치되는 아파치의 설치 폴더 --prefix=/usr/local/apache로 지정하여 관련 파일들이 해당 경로에 설치됩니다.

3.  아파치 설정 ( httpd.conf )

  • httpd.conf 설정파일을 vi 에디터로 수정합니다.
#> vi /usr/local/apache/conf/httpd.conf
  • .php 파일 및 html 파일에서 php 코드 실행되게 설정하려면 아래의 설정 내용을 httpd.conf 에 추가하여 주십시오
AddType application/x-httpd-php .php .phtml .php3 .html .htm
AddType application/x-httpd-php-source .phps

아파치 기본 설정
아파치 기본 설정

 

  • index.php, index.html 등을 기본으로 실행할 수 있도록 설정
#> DirectoryIndex index.html index.htm index.php index.php3 index.cgi
  • 아파치 로그의 사이즈가 너무 커지지 않도록 그림 파일 및 프래쉬 파일 로그 남기지 않게 설정
#CustomLog logs/access_log common 이렇게 되어 있는 것을 주석 처리 하고 
#아래 내용을 주가합니다 

SetEnvIfNoCase Request_URI (gif|png|jpg|css|js|bmp|jpeg|swf)$ IMAGE=1
CustomLog /usr/local/apache/logs/access_log common env=!IMAGE

4.  rc.local 에 아파치 자동 실행 등록 

서버 재가동시 아파치가 자동으로 실행될 수 있도록 rc.local 에 등록합니다.

#> echo '/usr/local/apache/bin/apachectl start' >> /etc/rc.d/rc.local

반응형

댓글