본문 바로가기

WebServer/apache

CentOS 6.5에 apache 2.4.16 설치

1.나는 home 계정 밑에 만들고 관리하려고 한다. 일딴 계정을 생성하자. (관리자 아이디로 생성한다)

useradd apache

passwd apache


2. 이제 /home/apache/ 밑에 server라고 폴더를 만들자. 그리고 서버 디랙토리로 이동한다.

cd /home/apache/

mkdir server

cd /home/apache/server/


3. apache를 다운 받자.

http://httpd.apache.org/download.cgi#apache24 여기서 다운받아서 올리거나 wget으로 받자.

나는 wget으로 받겠다. 요소검사로 URL 확인 후에 받으면 된다.

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


4. 압축을 풀자.

tar -xvf httpd-2.4.16.tar.gz


5. 설치를 해보자. 나는 설치가 안된다.

cd httpd-2.4.16

./configure --prefix=/home/apache/server/apache-2.4.16

make

make install


6. apr 어쩌구 하면서 설치가 안된다. make가 안되므로 apr을 설치하는데 apr-util도 필요하다. 같이 설치하자.

http://apr.apache.org/download.cgi 여기서 마찬가지로 다운받아서 올리거나 wget으로 받자. 여기서도 wget을 사용한다.그런데 apr util도 설치하지 않으면 오류가 해결되지 않는다. 같이 받자.

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

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


7. 이제 둘다 설치해보자.

tar -xvf apr-1.5.2.tar.gz

cd apr-1.5.2

./configure

make;make install


tar -xvf apr-util-1.5.4.tar.gz

cd apr-util-1.5.4

./configure

make

make install


yum -y install pcre-devel​(이건 설치해야하는건지 잘 모르겠음. 일딴 실행함)


8. 다시 아파치 설치파일 경로로 이동해서 설치하자. 

/home/apache/server/apache-2.4.16 경로에 설치가 될 것이다.

cd /home/apache/server/httpd-2.4.16

./configure --prefix=/home/apache/server/apache-2.4.16

make

make install


9. 아파치의 권한을 apache 계정으로 넘기자.

chown -R apache apache-2.4.16

chgrp -R apache apache-2.4.16


10. 아파치를 실행해보자

/home/apache/server/apache-2.4.16/bin/apachectl start


나는 여기서 실행하면 ServerName 어쩌구 에러가 난다.


아파치 실행시 오류 메시지

AH00558: httpd: Could not reliably determine the server's fully qualified domain

name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message


그래서 apache/conf/httpd.conf에서 ServerName를 적어주니 실행이 된다.

문제는 실행하면 / (루트)가 없다고 나오는데 일딴 설치는 여기서 끊겠다.


※ 추가

기본적으로 httpd를 포함해서 설치한 경우에는 설정파일이 기존 설정으로 적용되는듯 하다. 혹시 위 방법으로도 안된다면 httpd.conf 파일을 지정해보도록 하자. 지정해도 안되면 다른 문제이다.

/home/apache/server/apache-2.4.16/bin/apachectl start -f /home/apache/server/apache-2.4.16/conf/httpd.conf


-f 옵션을 이용해서 httpd.conf파일 지정이 가능하다. 확인하는 방법도 있는데, 아래와 같다.

httpd -V | egrep "(HTTPD\_ROOT|SERVER\_CONFIG\_FILE)"


정확한 경로가 나오지 않아 별 도움되지 않았다.


참고로 방화벽이 문제가 된다면 방화벽 설정을 해주어야한다.

setup


위 명령어를 실행하면 setup utility가 실행되는데 아래 화면처럼 나온다.



두번째 방화벽 설정으로 들어가가자. 참고로 위아래 키는 메뉴이동이고 좌우 키는 버튼 이동이다.



여기서 Customize에 들어가서 제일 하단에 보면 WWW (HTTP)라고 있는데 여기 체크해주어야 한다. 체크는 스페이스바 또는 엔터 키로 할 수 있다. 체크 후에 CLOSE 하면 위 화면으로 돌아오는데 OK 누르고 처음 화면에서 Quit로 나오면 된다.



참고

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

http://blog.naver.com/action1020/220084826628

https://wiki.apache.org/httpd/CouldNotDetermineServerName

http://zetawiki.com/wiki/%EC%95%84%ED%8C%8C%EC%B9%98_%EC%84%A4%EC%A0%95%ED%8C%8C%EC%9D%BC_httpd.conf,_apache2.conf_%EC%9C%84%EC%B9%98_%ED%99%95%EC%9D%B8