[Linux] ubuntu에 Apache 소스 설치

ubuntu-20.04에 Apache를 소스 설치해보자.

ubuntu APM 소스 설치

이 포스트는 ubuntu-20.04에 APM(Apache, PHP, MySql)을 소스 설치하는 과정이며, 아래의 세 가지 순서의 포스팅으로 이루어져 있다.
[Linux] ubuntu에 Apache 소스 설치
[Linux] ubuntu에 MySql 소스 설치
[Linux] ubuntu에 php 소스 설치

작업 환경

macOS에서 virtualBox로 가상머신 ubunto를 만들고 그 안에 소스 설치를 진행한다.

macOS : Big Sur 11.4
VirtualBox : 6.1.16
ubuntu : 20.04.2.0-desktop

권한 부여 & 설치 경로

설치에 필요한 권한을 부여받기 위해 다음의 명령어를 입력하고 패스워드를 입력한다.

$ sudo su

컴파일 설치는 관례상 /usr/local에 설치하므로 해당 경로로 이동한다.

$ cd /usr/local

관련 패키지 설치 및 apr, apr-util 설치

관련 패키지 설치

apt-get update $ apt-get install gcc zlibc zlib1g zlib1g-dev libssl-dev openssl libxml2-dev ncurses-dev libexpat1-dev

컴파일에 필요한 관련 패키지들을 설치해준다.

명령어

  • cd : 위치 이동 명령어
  • cp : 복사 명령어
  • wget : 지정한 주소로 부터 파일을 다운받는 명령어
  • tar xvfz : tar.gz 형식의 압축을 풀어주는 명령어
  • configure : 소스파일에 대한 환경설정을 해주는 명령어
    • configure의 prefix 옵션 : 컴파일된 프로그램을 설치하는 위치
  • make : 소스를 컴파일해주는 명령어
  • make install : make를 통해 만들어진 설치 파일을 설치해주는 명령어

configure -> make -> make install 의 순서로 소스로 된 프로그램 설치 진행

Command ‘make’ not found

make와 관련된 설치를 하지않는다면 Command 'make' not found 라는 메세지가 나오기 때문에 다음의 두 명령어를 입력한다.

$ sudo apt install make
$ sudo apt install build-essential

apr-1.7.0 설치

$ wget http://mirror.navercorp.com/apache//apr/apr-1.7.0.tar.gz
$ tar xvfz apr-1.7.0.tar.gz
$ cd apr-1.7.0
$ ./configure –prefix=/usr/local/apr

./configure --prefix=/usr/local/apr 시 다음과 같은 에러가 발생한다면,

rm: cannot remove `libtoolT’: No such file or directory

다음과 같은 명령어로 libtoolT에 복사해준다.

$ cp -arp libtool libtoolT

그 뒤 다시 ./configure --prefix=/usr/local/apr 명령어를 실행한다.

$ make
$ make install

1

apr-util-1.6.1 설치

$ wget http://mirror.navercorp.com/apache//apr/apr-util-1.6.1.tar.gz
$ tar xvfz apr-util-1.6.1.tar.gz
$ cd apr-util-1.6.1
$ ./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr
$ make
$ make install

2

pcre-8.43 설치

pcre는 정규식 패턴 일치를 구현하는 함수의 집합으로 아파치 설치에 필요하므로 설치해주자.

$ cd /usr/local
$ wget ftp://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz
$ tar xvfz pcre-8.43.tar.gz
$ cd pcre-8.43
$ ./configure –prefix=/usr/local/pcre
$ make
$ make install

3

apache 2.4.46 설치

$ wget http://apache.tt.co.kr//httpd/httpd-2.4.46.tar.gz
$ tar xvfz httpd-2.4.46.tar.gz
$ cd httpd-2.4.46
$ ./configure –prefix=/usr/local/apache2.4 \
> –enable-module=so –enable-rewrite –enable-so \
> –with-apr=/usr/local/apr \
> –with-apr-util=/usr/local/apr-util \
> –with-pcre=/usr/local/pcre \
> –enable-mods-shared=all

4

$ make
$ make install

5

실행 및 확인

  • 실행 명령어 : httpd -k start
  • 종료 명령어 : httpd -k stop

& sudo /usr/local/apache2.4/bin/httpd -k start

위 명령어로 실행 후 로컬호스트(127.0.0.1)에 접속해보자.
6

curl 명령어에 필요한 요소들을 설치한 뒤 명령어로도 아파치가 설치되었는지 확인해보자.

$ sudo apt-get install net-tools
$ sudo apt install curl
$ sudo curl http://127.0.0.1

7

Apache가 정상적으로 동작하는 것을 확인할 수 있다.