CentOS 7에서 Apache 2.4.33 버전을 컴파일해서 설치하는 방법에 대해 알아보겠습니다.



아파치 2.0.64 설치와의 차이점

1) apr (Apache Portable Runtime ) , apr-util

아파치 2.0을 설치할 때는 yum으로 apr, apri-util을 설치하지 않았습니다.

아파치 2.4 이상에서는 apr, apr-util이 없기 때문에 별도로 설치해야 합니다.


2) PCRE

PCRE( Perl Compatible Regular Expressions )는 펄 호환 정규 표현식으로서, 정규식 패턴 일치를 구현하는 함수의 집합입니다.

요즘에는 Apache, PHP, KDE 등을 포함한 오프 소스 프로젝트에서 사용되고 있으며, 아파치 2.4 버전을 설치할 때는 pcre를 설치해야 합니다.




1. 의존성 설치

# yum install -y wget

# yum install -y net-tools

# yum install -y gcc

# yum install -y gcc-c++

# yum install -y make

# yum install -y apr

# yum install -y apr-util





2. PCRE 설치

PCRE를 다운받아, 압축을 해제한 후 빌드를 합니다.

# wget https://sourceforge.net/projects/pcre/files/pcre/8.36/pcre-8.36.tar.gz/download # tar xvfz download # cd pcre-8.36

# ./configure --prefix=/usr/local

# make # make install





3. 아파치, apr, apr-util 설치

다음으로 아파치와 apr, apr-util을 설치합니다. ( 아파치 - 링크     /    apr - 링크 )

그리고 apr과 apr-util을 아파치의 srclib 디렉터리 안으로 이동시킵니다.

# cd

# wget http://apache.tt.co.kr//httpd/httpd-2.4.33.tar.gz # tar xvfz httpd-2.4.33.tar.gz


# wget http://apache.tt.co.kr//apr/apr-1.6.3.tar.gz

# tar xvfz apr-1.6.3.tar.gz

# wget http://mirror.navercorp.com/apache//apr/apr-util-1.6.1.tar.gz # tar xvfz apr-util-1.6.1.tar.gz


# mv apr-1.6.3 httpd-2.4.33/srclib/apr # mv apr-util-1.6.1 httpd-2.4.33/srclib/apr-util # cd httpd-2.4.33

*** 주의

미러사이트에서 재배포된 아파치 파일을 받을 경우 악성코드에 주의해야 합니다.

압축 파일을 받은 후 md5sum 명령어를 통해 소스코드를 검증할 수 있습니다.

md5sum httpd-2.4.33.tar.gz



다음은 설치에 대한 환경 설정을 하기 전에 /usr/local/victolee 디렉터리를 생성합니다.

이 디렉터리는 여러 라이브러리를 모아 놓기 위한 디렉터리인데, 이렇게 관리를 할 수 있다는 것이 컴파일 설치의 큰 장점이죠. 

이어서 apr을 포함시켜 아파치를 환경 설정 한 후, make 명령어로 빌드를 하고, make install 명령어로 설치를 합니다.

그리고 ls -l 명령어로 아파치 디렉터리가 설치되었는지 확인합니다.

# mkdir /usr/local/victolee


# ./configure \

--prefix=/usr/local/victolee/apache2.4.33 \ --with-included-apr \

--with-pcre=/usr/local/bin/pcre-config


# make

# make install


# cd /usr/local/victolee/apache2.4.33


** 오류 해결


만약 make를 할 때 위의 사진 처럼 expat.h 파일을 찾을 수 없다고 하면 expat-devel 라이브러리를 설치합니다.

그리고 make clean을 한 후, 다시 make를 진행합니다.

# yum install -y expat-devel

# make clean

# make





3. 아파치 설정 수정

설치된 아파치 디렉터리에서 파일 및 디렉터리의 목록을 보시면,

configure에서 설치했던 모듈들이 modules 디렉터리에 저장이 되어있습니다.

이후에 PHP 모듈 같은 다른 모듈들을 설치하게 되면 modules 디렉터리에 존재하게 됩니다.

그리고 htdocs 디렉터리에는 웹 콘텐츠( html 파일 등 )들이 존재합니다.


아파치 환경 설정을 하는 파일은 conf/httpd.conf 파일이고, 지금은 테스트를 위해 Server Name을 수정해볼 것입니다.

# ls -l


# vi conf/httpd.conf

( ServerName을 검색해서 아래와 같이 수정 ( line : 192 ) )

ServerName 127.0.0.1:80





4. 아파치 실행

마지막으로 아파치를 실행하고, 프로세스에서 확인합니다.

# /usr/local/victolee/apache2.4.33/bin/apachectl start

# ps -ef | grep httpd





5. 테스트

아파치가 잘 실행되는지 브라우저에서 확인합니다.

ifconfig 명령어를 통해 IP주소를 확인한 후, 브라우저에 접속해봅니다. ( 저 같은 경우는, http://192.168.245.130 )


위와 같은 페이지가 보인다면, 아파치가 성공적으로 설치된 것입니다.




이상으로 아파치 2.4.33 버전을 컴파일로 설치하는 방법에 대해 알아보았습니다.