티스토리 뷰

1. 설치 환경 준비하기

sudo apt install build-essential

C, C++ 컴파일러 및 Make, 각종 라이브러리 등 개발에 필요한 도구들이 설치된다.


2. Apache 및 설치에 필요한 프로그램 다운로드

다운로드는 wget 을 이용한다.만약 설치되어있지 않다면 아래 명령으로 설치한다.

sudo apt install wget

설치 확인을 위해서 wget 을 입력한다.


아래 각 항목에서 다운로드 후 tar 명령으로 압축을 풀어둔다.

tar zxf <파일 이름>

또는

tar zxvf <파일 이름>

압축 해제 후 ls 로 같은 이름의 폴더가 생성된 것을 확인할 수 있다.


2.1 Apache

wget http://apache.mirror.cdnetworks.com//httpd/httpd-2.4.29.tar.gz

최신 버전은 이곳에서 다운 받는다. 

http://httpd.apache.org/download.cgi#apache24

Source: httpd-2.4.XX.tar.gz 우클릭 후 링크 복사하면 wget에 필요한 경로를 얻을 수 있다.


2.2 APR, APR-util

APR이란, Apache가 설치된 플랫폼(OS)에 관계 없이 일정한 동작을 하기 위해 필요한 라이브러리이다.

Apache 설치 시 요구 사항이지만 어째서인지 공식 문서에 안내 되지 않고있다.

미리 다운 받는다.


wget http://apache.mirror.cdnetworks.com//apr/apr-1.6.3.tar.gz

wget http://apache.mirror.cdnetworks.com//apr/apr-util-1.6.1.tar.gz


최신 버전은 이곳에서 다운 받는다.

https://apr.apache.org/download.cgi

Apache와 마찬가지로 다운로드 링크를 우클릭 후 링크 복사로 wget에 필요한 경로를 얻을 수 있다.


2.3 pcre

pcre는 정규표현식 라이브러리이다.

ubuntu에 설치되어있지 않기 때문에 미리 설치하고 진행한다.

마찬가지로 Apache 설치에 필요한 사항이지만 공식 문서에 안내 되지 않고있다.


wget https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz

pcre2로 설치하는 경우 Apache 설치할 때 설치된 pcre2 라이브러리를 인식하지 못한다.


3. 컴파일 및 설치

설치 경로를 바꾸지 않고 기본 경로로 설치한다.

기본 설치 경로는 /usr/local 이다.


3.1 APR, APR-util

APR을 먼저 설치하기 위해 해당 폴더로 이동한다.

cd apr-1.6.X


./configure

make

sudo make install


이어서 APR-util을 설치하기위해 해당 폴더로 이동한다.

cd ../apr-util-1.6.X


APR-util은 설치 시 APR의 경로를 지정해주어야 한다.

./configure --with-apr=/usr/local/apr

make

make install


expat.h: No such File or Directory

만약 make 단계에서 위와같은 에러가 나오면 libexpat1-dev를 설치한 뒤 make 부터 다시 한다.

sudo apt install libexpat1-dev


3.2 pcre

pcre를 설치하기 위해 해당 폴더로 이동한다.

cd ../pcre-8.41/


./configure

make && sudo make install


3.3 Apache

Apache를 설치하기 위해 해당 폴더로 이동한다.

cd ../httpd-2.4.29


./configure -n

configure에 필요한 도구들이 있는지 확인하기 위해 -n 옵션을 달았다.

-n 옵션으로 미리 확인하지 않는다면 매번 생성되는 Makefile을 삭제해주어야 한다.

문제가 발생한다면 해당 문제를 구글에 검색해 해당 도구를 설치한 뒤 다시 ./configure -n 을 입력한다.


문제가 없다면 설치를 진행한다.

-n 옵션은 make에 필요한 결과물(Makefile)을 생성하지 않기 때문에 -n 옵션 없이 다시 configure 한다.


만약 추가하고 싶은 모듈이 있다면 configure 단계에서 옵션을 추가한다.

자세한 사항은 아래 링크에서 확인할 수 있다.

https://httpd.apache.org/docs/2.4/programs/configure.html#installationdirectories


./configure

make && sudo make install


4. 실행

sudo /usr/local/apache2/bin/apachectl start

위 명령를 실행하면 Apache 서버 프로그램이 실행된다.


/usr/local/apache2/bin/httpd: eeror while loading shared libraries: libpcre.so.1: cannot open chared object file: No such file or dicectory

위와 같은 오류가 나타나는 경우 아래 명령을 실행한다.


sudo /sbin/ldconfig

sudo /usr/local/apache2/bin/apachectl start


ldconfig는 모듈 파일(*.so 등)을 인식하지 못할 때 다시 읽어오는 파일이다.


웹 브라우저에서 서버 주소를 입력하고 It Works! 라는 문구가 보이면 성공한 것이다.


5. 실행 환경 설정

/usr/local/apache2/conf/httpd.conf

위 경로에서 포트 변경 및 모듈 추가/삭제를 할 수 있다.


cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd

아파치 실행 파일을 /etc/init.d 폴더에 httpd란 이름으로 복사한다.

이후 아래 명령으로 서버를 실행, 정지 시킬 수 있다.

service httpd start

service httpd stop



참고자료

https://httpd.apache.org/docs/2.4/install.html

https://askubuntu.com/questions/689722/how-to-install-a-c-c-compiler-in-ubuntu-14-04lts

https://github.com/scottcorgan/bucket-list/issues/2

http://jin1ib.tistory.com/10

https://sir.kr/pg_tip/9207


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함