7.27.2016

조금(?)어렵게 설치하는 우분투에 아파치2.4(최신버전)

이전 글에 적었던  Apache2 ubuntu 리패키징 버전은 설치는 상당히 간단하게 진행했지만
이번에 적는 것은 정식버전을 좀 불편(?)하고 까다롭고 섬세하게(?) 설치해보려고 합니다.


설치순서는 아래와 같습니다.
1. APR 설치
2. APR UTIL 설치
3. PCRE 설치
4. Apache2.4 설치

주의할점은 1번을 해결한 뒤에 2번을 진행해야 한다는 점입니다.
그러므로 그냥 마음 편하게 1234 순차적으로 진행하는 것을 권장하는 바입니다.



우선 다운로드 링크(link)에 들어가서
Download를 클릭하고
(작성 기준 최신버전인)Apache httpd 2.4.34 을 다운 받도록 합니다.





표시한 부분 중에서 Apache httpd 2.4.34 의  tar.bz2나 tar.gz 확장자를 둘 중 하나 선택해서
다운로드 받으면 됩니다.
저는 tar.gz로 받아봤습니다.



저는 Downloads 디렉토리에 파일을 다운로드 받았고
압축을 푼 다음
httpd-2.4.23 디렉토리에 들어가봤습니다.

위에서 보면 초록색으로 적혀있는 configure 파일을 이용하여 설치하면 되는데
Apache httpd 2.4.34 설치는 이따가 진행해야 하므로  우선 넘어가고 다음 단계로 진행하도록 합니다.



설치순서 
1. APR과 2. APR UTIL을 설치하기 위해  위 사이트(link)에 접속하여
Download 를 클릭합니다.



설치순서 1번에 해당되는 APR 1.5.2(글 작성기준으로 가장 최신버전)을 다운받도록 합니다.


이번에도 편의상  tar.gz 확장자로 다운로드 받아봤습니다.






그리고 APR 1.5.2 아래에 있는 APR-UTIL 1.5.4 도 같이 받아줍니다.
APR UTIL도 역시 tar.gz 확장자로  다운로드 받았습니다.




이번에는 설치과정 3번을 하기 위한  PCRE를 다운로드 하기 위해
pcre.org에 들어가서 Download에 링크 둘 중에 하나를 클릭하여 다운로드를 진행합니다.

개인적으로 아래 sourceforge를 경유하여 받는 것으로 진행하였습니다.

Download_Direct Link(sourceforge)




위 PCRE 를 선택하고



가장 최신버전인 8.39를 클릭하여




PCRE-8.39 tar.gz나 PCRE-8.39 tar.bz2 둘 중에 하나 받으면 되는데
위에서는 tar.gz만 받았으니 이번에는 tar.bz2 확장자를 받도록 합니다.



tar.gz는 압축을 풀 때 아래와 같은 명령어를 이용합니다. 

tar xvfz 파일명.tar.gz 으로 하면 됩니다.

 (tar.bz2 압축파일을 해제시키는 명령어는
이따가 PCRE-8.39.tar.bz2 압축 풀때 따론 언급하겠습니다.)


압축을 푼 다음에는  apr-1.5.2 디렉토리가 생성되는데



Downloads/apr-1.5.2 디렉토리를 들어가서 뭐가 있는지 살펴봅니다.




저 초록색으로 적힌 configure을 이용하여 설치를 진행합니다.


관리자 권한이 필요하므로
sudo ./configure --prefix=/usr/local/apr 을 입력합니다.



그러면 위와같은 화면이 나오는데



libtolT라는 파일을 제거할 수 없다고 에러가 발생했네요
당황하지말고 참착하게  cp libtool libtoolT 라고 명령어를 입력하여
 libtool이라는 파일을 libtoolT라는 파일로 복사 해줍니다.


그리고 다시 sudo ./configure --prefix=/usr/local/apr 입력하여 다시 시도합니다.



관리자 권한이 필요하므로 sudo make를 이용하여 컴파일을 하고



컴파일을 하니 gcc 가보이는데 혹시 gcc가 설치되어 있지 않다면 에러가 발생할 수 있습니다.
 gcc를 설치하려고 하면
sudo apt-get install gcc   명령어를 입력하여 설치할 수 있습니다.




컴파일이 다 끝나면
그리고 sudo make install 을 입력하여 설치를 진행합니다.




위와같이 에러가 발생하지 않고 잘 설치가 되었다면
/usr/local 디렉토리에 가서  apr이 있는지 확인해봅니다.
위와같이 apr이 보인다면   apr이 잘 설치된겁니다.

여기까지 1번 설치과정을 완료하였고
다시 2번 설치과정으로 넘어가도록 하겠습니다.




아까 Downloads 에 받아둔 apr-util-1.5.4.tar.gz 파일을 압축을 풀도록 합니다.

명령어를 tar xvfz apr-util-1.5.4.tar.gz 명령어를 입력하여 압축을 풀도록 합니다.


압축을 풀면 위와 같이 나옵니다.



압축을 풀면 apr-util-1.5.4 디렉토리가 생기는데

apr-util-1.5.4 디렉토리로 들어가서 초록색으로 된  configure 파일을 다시 확인할 수 있습니다.



sudo ./configure --prefix=/usr/local/apr-util  --with-apr=/usr/local/apr 명령어를 입력하여
작업을 진행하도록 합니다.



위와같이 에러가 발생하지 않았다면  다시 설치 단계로 넘어가도록 합니다.



sudo make 입력하여 컴파일 끝내고
다시 sudo make install 하여 설치하면 좀 귀찮으므로
명령어를 한줄에 입력하여 진행해보도록 합니다.

sudo make && sudo make install 를 입력하면  컴파일이 완료되면 설치작업을 진행합니다.



apr util까지 설치가 다 되었고  설치순서 2번까지 과정이 완료가 되었습니다.




이번에는 pcre-8.39.tar.bz2 파일을 압축 풀어아 합니다. (아까 tar.bz2로 받아보자고 했던 거)
명령어 tar xvfj pcre-8.39.tar.bz2를 입력하여 압축을 풉니다.
( tar.bz2 확장자는 tar xvfj 라는 명령어를 사용합니다.)



압축을풀면 pcre-8.39 디렉토리가 생성되는데  pcre-8.39 디렉토리에 들어가서
다시 뭐가 있는지 확인해보니 역시 configure 파일이 있다는 것을 확인할 수 있습니다.



sudo ./configure --prefix=/usr/local/pcre 명령어를 입력하여 설치단계로 넘어가도록 합니다.



그러나,
저는 C++ 컴파일러가 없어서 에러가 발생했네요
 (G++이 이미 설치되신 분은 그냥 다음단계로~)
C++ 컴파일러인 G++을 설치해줘야 합니다.



G++ 설치는
sudo apt-get install g++ 을 이용하여 간편하게 설치 할 수 있습니다.



G++ 설치 완료하면 위와같은 화면을 볼 수 있는데



sudo ./configure --prefix=/usr/local/pcre 명령어를 다시 입력하여 작업을 진행하니
이번에는 에러가 없이 잘 진행되었습니다.



아마도 PCRE는 C로 만들어서 G++이 필요했던거 같습니다.



이제 sudo make && sudo make install 명령어를 입력하여
 컴파일 후에 설치하는 작업을 진행하도록 합니다.




설치 완료된 후에  /usr/local에 다시 들어가서 확인해보니
apr  그리고 apr-util 그리고 pcre 까지 제대로 설치가 다 되었다는 것을 확인할 수 있습니다.



이제 설치과정 4번째인  Apache httpd2.4.23을 설치하도록 하겠습니다



이번에는 명령어가 좀 깁니다. (오타가 발생하지 않도록 조심해야 합니다.)
sudo ./configure --prefix=/usr/local/apache24 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-mods-shared=most --enable-module=so --enable-rewrite

를 입력합니다. 
사진에는줄이 길어서 역슬래쉬(\)를 입력하여 이어가도록 하였습니다.


에러 없이 잘 진행되었으며



이제  sudo make && sudo make install 를 입력하여
컴파일과 컴파일 후에 설치를 진행하도록 힙니다.



일단 에러가 없이 잘 되었는데
설치가 잘되었는지 확인해보기 위해



/usr/local/apache24 디렉토리로 들어가서 apachectl이 있다면 설치가 잘 된 것 입니다.



그리고 cd /usr/local/apache24/bin 를 이용하여   /usr/local/apache24/bin  경로에 들어가서











apachectl 파일을 /etc/init.d/httpd에 복사해야합니다.
관리자 권한이 필요하므로 sudo를 붙여 아래 명령어를 입력합니다.

sudo cp apachectl /etc/init.d/httpd




파일 복사 후에

 /etc/init.d 에 들어가서 httpd 파일이 있다는 것을 확인해보도록 합니다.


여기까지 잘 되었다면 설치는 다 된거지만
설정을 좀 바꿔줘야 할 부분이 있으므로 아래와 같은 과정을 진행합니다.




환경설정파일을 찾아야 하는데
환경설정파일은
/usr/local/apache24/conf 에 들어가면 httpd.conf 파일을 볼 수 있는데
이 파일이 환경설정 파일입니다.




G 에디트를 이용하여 실행시켜보도록 합니다.

(명령어는cd /usr/local/apache24/conf
sudo gedit httpd.conf
입력하면 됩니다.)





이전 글에서 진행한 것과 비슷합니다.,
190번에 servername 에서 localhost:80으로 바꿔주고




옆에 주석(#)을 풀어줘야 합니다. (실수하기 딱 좋음)




215 번째 줄에서   it works! 가 있는 파일 경로를 볼 수 있고
(잠시후에 실행하여 메시지를 볼 것입니다.)




기본 경로도 확인할 수 있습니다.



기본문서는 248번에 적힌 index.html 파일입니다.






이제  서비스를 실행해보도록 합니다.
sudo service httpd start 를 입력하면 서비스가 시작되는데




저는 위에서 G에디트로 실행 하였을때 실수로 주석을  풀지않아에러가발생하였습니다.
주석을 지워주고  다시 실행해보니 




브라우저에 localhost를 입력하면  it works! 메시지를 볼 수 있습니다.

it works! 가 보인다면
apache2.4가 제대로 설치되었고 잘 작동되었다는 뜻입니다.






댓글 1개:

  1. 이게 아파치를 컴파일 설치하는 과정인거죠...?

    답글삭제