Linux

[Ubuntu] APM 소스(컴파일/수동) 설치하기 1 - Apache

Hyeonni 2022. 3. 12. 02:11

해당 포스팅은 Ubuntu 20.04 기준입니다.

 

서버의 구성

 

  • 서버 : Apache, Ngnix
  • 백엔드 프로그래밍 언어 : PHP, Spring, Node.js
  • DB, DBMS : MySQL, Oracle, Mongo DB

그렇다면 APM은 무엇일까?

서버의 구성을 잘 보면 감이 온다!!

 

APM이란

 

  • A : Apache => 웹 서버
  • P : PHP => 백엔드 프로그래밍 언어
  • M : MySQL => 데이터베이스

APM은 하나의 소프트웨어를 의미하는 것이 아니라 서버를 구성하는 3가지를 연동해서 운영되도록 만든 환경을 말한다.

 

소스 설치/ 컴파일 설치/ 수동 설치

 

  • 소스 설치는 os의 종류, 버전, 프로그램의 의존성에 맞추어서 소스 다운받아 컴파일해서 설치하는 것이다.
  • 패키지 설치는 패키지 매니저를 사용해서 설치를 하는 것이다.
    패키지 설치를 하게 되면 불필요한 파일들도 함께 설치되어 자원 낭비가 발생하고, 패키지 단위이기 때문에 관리 문제가 발생할 수 있다.

 

소스 설치 시 알아두면 좋은 점

 

  • /usr/local에 설치하는 것이 관례이다.
  • 소스 파일을 다운받은 후에 ./configure로 환경설정을 해준다.
  • make로 소스를 컴파일을 한다.
  • make install로 설치한다.

 

필수 설치 패키지

$ sudo su
# apt-install make gcc vim 
# apt-get install build-essential libexpat1-dev g++ net-tools curl
# apt-get install --reinstall make

두 번째 줄의 경우, 이미 우분투를 사용하고 있던 유저면 대부분 깔려 있을 것이므로 넘어가도 된다.

 

apr 설치

1) apr-1.7.0 다운로드
/usr/local# wget http://mirror.navercorp.com/apache//apr/apr-1.7.0.tar.gz

2) 압축 해제
/usr/local# tar xvfz apr-1.7.0.tar.gz

3) 파일 이동
/usr/local# cd apr-1.7.0

4) ./configure 환경 설정
/usr/local/apr-1.7.0# ./configure --prefix=/usr/local/apr

여기서 오류(cannot remove 'libtoolT' : No such file or directory)가 난다면
# cp -arp libtool libtoolT 다운로드

5) 소스코드 컴파일
/usr/local/apr-1.7.0# make

6)설치 파일 설치
/usr/local/apr-1.7.0# make install

/usr/local/apr-1.7.0# cd ..
  • APR : Apache Portable Runtime은 Apache 웹 서버용 지원 라이브러리이다. 기본 운영 체제에 매핑되는 API 집합을 제공한다.
  • wget :  웹 서버로부터 파일을 다운
  • tar xvfz :  tar.gz 파일을 한 번에 압축 해제
  • --prefix : 위치 지정 옵션

아래 설치 과정들은 위와 동일한 방식으로 계속 설치되므로 자세한 설명은 생략한다.

 

apr-util 설치

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

pcre 설치

* pcre-8.45 다운로드
/usr/local# wget https://osdn.net/projects/sfnet_pcre/downloads/pcre/8.45/pcre-8.45.tar.gz
/usr/local# tar xvfz pcre-8.45.tar.gz
/usr/local# cd pcre-8.45
/usr/local/pcre-8.45# ./configure --prefix=/usr/local/pcre
/usr/local/pcre-8.45# make
/usr/local/pcre-8.45# make install
/usr/local/pcre-8.45# cd ..
  • PCRE : Perl Compatible Regular Expressions는 펄 호환 정규 표현식이다. 정규식 패턴 일치를 구현하는 함수의 집합니다. Apache 2.4 버전을 설치하기 위해서 PCRE 설치가 필요하다.

* index.html 파일이 다운되었다면?

맨뒤에 /가 있는지 확인하자.

그래도 안된다면 pcre 압축 파일을 다운로드 했는데 index.html 파일이 다운되었다면, 잘못된 파일이 다운된 것이다.

https://osdn.net/projects/sfnet_pcre/downloads/pcre/8.45/pcre-8.45.tar.gz

링크된 pcre 다운로드 페이지에서 파일을 다운받아 /usr/local 디렉터리로 옮겨주고 압축 해제를 진행하면 된다.

파이어폭스에서 위 링크를 들어가면 자동으로 pcre 파일이 다운로드 된다.

그럼 기본으로 설정이 되어있다면 내 폴더의 다운로드 파일에 다운이 되어 있을 것이다.

마우스 드래그로 이동이 안되기 때문에 터미널을 통해서 이동을 시켜준다.

sudo mv /home/{유저명}/다운로드/pcre-8.45.tar.gz /usr/local

apache-2.4.51 (Apache 설치)

*apache-2.4.51 다운로드
/usr/local# wget https://dlcdn.apache.org//httpd/httpd-2.4.51.tar.gz
/usr/local# tar xvfz httpd-2.4.51.tar.gz
/usr/local# cd httpd-2.4.51

/usr/local/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

/usr/local/httpd-2.4.51# make
/usr/local/httpd-2.4.51# make install
/usr/local/httpd-2.4.51# cd ..
  • '\' 백 슬라이스는 필수는 아니다.

 

Apache 실행

/usr/local$ sudo apache2.4/bin/httpd -k start
/usr/local$ sudo curl http://127.0.0.1
  • Apache 실행 : httpd -k start
  • Apache 종료 : httpd -k stop

 

파이어폭스 웹 브라우저를 열어서 localhost(127.0.0.1)을 입력했을 때 Apache가 실행된 모습이다.

Apache 실행 성공