Apache HTTP Server 컴파일 설치
반응형

Apache HTTP Sever (웹서버) 를 사용하기 위해서는 직접 Compile 하여 설치해야 한다.

 

최근에 설치할 일이 생겨 필요한 설치했던 이력을 남겨 둔다.

 

  • 설치 대상 플랫폼 
    • Ubuntu 20.04.4 LTS
  • 필요 소스
    • apr : v. 1.7.0
    • apr-util : v. 1.6.1
    • pcre : v. 8.45
    • httpd :  2.4.52
  • 최종 경로
    • /usr/local/bin/apr
    • /usr/local/bin/apr-util
    • /usr/local/bin/pcre
    • /usr/local/bin/apache

 

먼저 컴파일을 위한 환경을 구성한다.

sudo apt install gcc
sudo apt install g++
sudo apt install make
sudo apt install libexpat1-dev

 

다음은 원하는 디렉터리를 생성하고 파일을 다운로드 한다.

여기서는 tuser 에 garage 디렉터를 생성하여 다운로드 하고 tar ball 을 해제 한다.

cd /home/tuser/garage
wget https://dlcdn.apache.org/apr/apr-1.7.0.tar.gz
wget https://dlcdn.apache.org/apr/apr-util-1.6.1.tar.gz
wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz
wget https://dlcdn.apache.org/httpd/httpd-2.4.52.tar.gz

tar xvf apr-1.7.0.tar.gz
tar xvf apr-util-1.6.1.tar.gz
tar xvf pcre-8.45.tar.gz
tar xvf httpd-2.4.52.tar.gz

 

apr 설치.

cd ~/garage/apr-1.7.0

./configure --prefix=/usr/local/bin/apr

make 
sudo make install

 

apr-util 설치. apr 이 필요하다.

cd ~/garage/apr-util-1.6.1

./configure --prefix=/usr/local/bin/apr-util \
--with-apr=/usr/local/bin/apr \
--prefix=/usr/local/bin/apr-util \

make
sudo make install

 

pcre 설치. apr과 apr-util 이 필요하다.

cd ~/garage/pcre-8.45

./configure --prefix=/usr/local/bin/pcre \
--with-apr-util=/usr/local/bin/apr-util \
--with-apr=/usr/local/bin/apr

make
sudo make install

 

Apache HTTP Server 설치. 앞서 설치한 모듈이 모두 필요하다.

cd ~/garage/httpd-2.4.52

./configure --prefix=/usr/local/bin/apache \
--enable-module=so --enable-rewrite --enable-so \
--with-apr=/usr/local/bin/apr \
--with-apr-util=/usr/local/bin/apr-util \
--with-pcre=/usr/local/bin/pcre \
--enable-mods-shared=all \

make
sudo make install

실행 전 문제가 없도록 ServerName을 수정한다.

위치는 bin 과 같은 위치의 conf 밑의 httpd.conf 파일이다.

이 파일을 열어 아래 한가지를 선택하여 입력한다. (4가지를 다 넣어서는 안된다!!!!!)

ServerName localhost
ServerName 127.0.0.1
ServerName localhost:80
ServerName 127.0.0.1:80

 

실행/종료 방법 1

cd /usr/local/bin/apache/bin/
sudo ./httpd -k start
sudo ./httpd -k stop

 

실행/종료 방법 2

cd /usr/local/bin/apache/bin/

sudo ./apachectl start
sudo ./apachectl stop
sudo ./apachectl restart

 

실행 후 확인 방법

[tusr01:/usr/local/bin/apache/bin] ps -ef | grep http
root        1333       1  0 09:41 ?        00:00:00 /usr/local/bin/apache/bin/httpd -k start
daemon      1334    1333  0 09:41 ?        00:00:00 /usr/local/bin/apache/bin/httpd -k start
daemon      1335    1333  0 09:41 ?        00:00:00 /usr/local/bin/apache/bin/httpd -k start
daemon      1336    1333  0 09:41 ?        00:00:00 /usr/local/bin/apache/bin/httpd -k start

 

컴파일 설치 후 Configure 정보는 아래 경로에 있다.

# 위치 : /apache 설치 경로/build/config.nice 


[tuser01:/usr/local/bin/apache/build] cat config.nice 
#! /bin/sh
#
# Created by configure

"./configure" \
"--prefix=/usr/local/bin/apache" \
"--enable-module=so" \
"--enable-rewrite" \
"--enable-so" \
"--with-apr=/usr/local/bin/apr" \
"--with-apr-util=/usr/local/bin/apr-util" \
"--with-pcre=/usr/local/bin/pcre" \
"--enable-mods-shared=all" \
"$@"
반응형