nas 서버 셋팅
참고 : http://diveis.tistory.com/109
아파치 웹서버를 컴파일 하기전에 필요한 apr, apr-util, pcre를 먼저 설치해야한다.
[apr 설치]
- 소스다운
#wget http://archive.apache.org/dist/apr/apr-1.5.1.tar.gz
- 압축해제
#tar xvfz apr-1.5.1.tar.gz
- 경로 이동
#cd /usr/local/src/apr-1.5.1
- 환경설정
#./configure --prefix=/usr/local/apr
- 컴파일
#make
- 설치
#make install
[apr-util 설치]
- 소스다운
#wget http://archive.apache.org/dist/apr/apr-util-1.5.3.tar.gz
- 압축해제
#tar xvfz apr-util-1.5.3.tar.gz
- 경로 이동
#cd /usr/local/src/apr-util-1.5.3
- 환경설정
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
- 컴파일
#make
- 설치
#make install
[pcre 설치]
- 소스다운
#wget http://downloads.sourceforge.net/pcre/pcre-8.35.tar.bz2
- 압축해제
#tar xvf pcre-8.35.tar.bz2
- 경로이동
#cd pcre-8.35
- 환경설정
#./configure --prefix=/usr/local
- 컴파일
#make
- 설치
#make install
* root사용자로 로그인 하여 작업을 진행한다.
#yum install openssl-devel.x86_64
mod_ssl 때문에 Open SSL패키지를 설치한다.
#cd /usr/local/src
컴파일할 아파치 소스를 다운 받을 디렉토리로 이동한다.
#wget http://ftp.kaist.ac.kr/Apache/httpd/httpd-2.4.10.tar.gz
아파치 소스를 다운로드 한다. 현재 오늘 날짜를 기준으로 Apache 2.4.10이 최신 버젼이다.
#tar xvfz httpd-2.4.10.tar.gz
압축을 해제한다.
[mpm 접속시 최대 접속자수 설정]
아파치 웹서버의 경우 MPM(Multi Processing Module)방식에는 prefork와 worker로 나뉜다.
- prefork는 독립적인 메모리를 사용하여 안정적이지만 많은 메모리를 사용하게 된다.
- worker는 고성능의 멀티코어 프로세서 기반에서 유용하고, 더 적은 메모리를 사용하기에 통신량이 많은 경우 더 유리하다.
* 젠드가드는 prefork에서만 설치된다. 뭔지 모르면 그냥 이걸로 한다.
컴파일전 환경설정에서 —with-mpm 옵션으로 설정할 수 있고, 설치방식에 따라 최대 접속자수를 지정해야 하고, 설정하지 않을경우 기본값으로 설치가 된다.
- prefork 설정시
# vi server/mpm/prefork/prefork.c (73번 라인:버젼 따라 위치는 다를수 있음)
DEFAULT_SERVER_LIMIT의 상수값을 변경해준다. 난 1024로 수정했다.
- worker 설정시
# vi server/mpm/worker/worker.c (84번 라인:버젼 따라 위치는 다를수 있음)
DEFAULT_SERVER_LIMIT의 상수값을 64정도로 수정해준다.
#./configure --prefix=/usr/local/apache \
--enable-rule=SHARED_CORE \
--enable-so \
--enable-rewrite \
--enable-vhost-alias \
--enable-ssl \
--enable-proxy \
--enable-shared=max \
--enable-modules=shared \
--enable-mods-shared=all \
--with-apr=/usr/local/apr \
--with-charset=utf-8 \
--with-mpm=prefork \
--with-apr-util=/usr/local/apr-util
컴파일에 필요한 환경설정 이다. 나의 경우 젠드가드를 설치해야 하는 문제로 prefork로 설정해야 한다.
#make
아파치 웹서버를 컴파일 한다.
#make install
/usr/local/apache 디렉토리에 컴파일된 아파치의 바이너리 코드를 설치한다.
#vi /usr/local/apache/conf/httpd.conf
ServerName 항목을 찾아서 주석을 해제한다.(205번 라인:아파치 버젼에 따라 다를수 있음)
slotmen_shm_module 모듈도 로드 될 수있도록 주석을 해제해준다.(137번 라인:아파치 버젼에 따라 다를수 있음)
#/usr/local/apache/bin/apachectl restart
아파치 웹서버를 구동시켜본다.
같은 네트워크에 있는 다른 컴퓨터에서 리눅스 서버의 아이피주소를 입력해본다. 만약 가상머신에 설치한 리눅스라면 메인 시스템의 웹브라우저에서 가상머신의 아이피주소를 입력해보면 된다.
아래와 같이 나온다면 성공적인 설치가 된 것이다.
#cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
실행 스크립트 복사
#chmod 755 /etc/init.d/httpd
권한 부여
#vi /etc/rc.d/rc.local
rc.local에 아래 명령을 입력해주면 부팅시 자동으로 아파치 웹서버를 구동할 것이다.
/usr/local/apache/bin/apachectl start