Apache 2.4.46 버전 linux(centos7) 환경 설치 방법
Apache HTTP Server - Source 파일을 이용한 컴파일 설치
우선, apache 설치에 필요한 os 패키지를 설치합니다.
# yum install gcc-c++
# yum install openssh-server openssh-clients openssh-askpass
# yum install openssl openssl-devel
# yum install zlib-devel
# yum install expat-devel
- gcc : 오픈 소스 컴파일러 컬렉션
- ssl : 네트워크를 통한 데이터 통신에 쓰이는 프로토콜
- ssh : 보안이 강화된 서버 원격 접속 및 제어 도구
- zlib : 데이터 압축 오픈 소스 라이브러리
- expat : xml 파서 라이브러리
필요한 최신 버전의 설치 파일을 링크 주소 복사 후 다운로드 및 압축 해제를 합니다.
1.apache 다운
# wget https://mirror.navercorp.com/apache//httpd/httpd-2.4.46.tar.gz
# wget https://mirror.navercorp.com/apache//apr/apr-1.7.0.tar.gz
# wget https://mirror.navercorp.com/apache//apr/apr-util-1.6.1.tar.gz
# wget https://ftp.pcre.org/pub/pcre/pcre2-10.36.tar.gz
# tar xvfz httpd-2.4.46.tar.gz
# tar xvfz apr-1.7.0.tar.gz
# tar xvfz apr-util-1.6.1.tar.gz
# tar xvfz pcre2-10.36.tar.gz
그 다음엔 pcre 설치를 해줍니다. (차례로 입력하면 됩니다.)
# cd ./pcre2-10.36
# ./configure --prefix=/usr/local/pcre
# make
# make install
apr 설치를 합니다. (차례로 입력하면 됩니다.)
# cd ../apr-1.7.0
# ./configure --prefix=/usr/local/apr (에러발생)
# cp -arp libtool libtoolT
# ./configure --prefix=/usr/local/apr(다시 configure)
# make
# make install
apr-util 설치를 합니다. (차례로 입력하면 됩니다.)
# cd ../apr-util-1.6.1
# ./configure --prefix=/usr/local/aprutil --with-apr=/usr/local/apr
# make
# make install
apr-1.7.0과 apr-util-1.6.1은 ./httpd-2.4.46/srclib/ 안에 디렉토리명을 바꿔서 넣어줍니다.
# mv apr-1.7.0 ./httpd-2.4.46/srclib/apr
# mv apr-util-1.6.1 ./httpd-2.4.46/srclib/apr-util
apache 설치를 해줍니다. (차례로 입력하면 됩니다.)
# cd ../httpd-2.4.46
# ./configure \
--prefix=/SW/web/httpd-2.4.46 \
--with-mpm=worker \
--with-pcre=/usr/local/pcre/bin/pcre-configure \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/aprutil \
--with-ssl=/usr/bin/openssl \
--enable-module=so \
--enable-so \
--enable-rewrite=shared \
--enable-ssl=shared \
--enable-deflate=shared \
--enable-cache=shared \
--enable-disk-cache=shared \
--enable-mem-cache=shared \
--enable-proxy \
--enable-unique-id \
--enable-asis=shared \
--enable-headers \
--enable-logio=shared \
--enable-expires=shared \
--enable-status=shared \
--enable-auth-digest \
--enable-lib64 --libdir=/usr/lib64
# make
# make install
위 명령어를 실행 시키면 본인이 설정한 설치경로에 아파치 홈 디렉토리가 생성됩니다.
- configure : 소스파일에 대한 환경설정(서버 환경에 맞춰 makefile 생성)
- make : 소스 컴파일(설치 파일 생성)
- make instatll : make 통해 만들어진 설치 파일을 설치.
설치가 다 끝났으면 아파치를 실행합니다.
# (설치파일경로)/bin/apachectl start
제대로 실행이 됐는지 확인합니다.
# ps -ef | grep httpd
제대로 실행이 됐다면 다음과 같이 나타납니다.
이제 80포트 방화벽을 개방해줍니다.
# firewall-cmd --permanent --zone=public --add-port=80/tcp
# firewall-cmd --reload
# firewall-cmd --list-ports
httpd를 서비스 등록을 시켜줍니다. (os 재부팅시 자동실행)
# nano /etc/systemd/system/httpd.service
/etc/systemd/system 경로로 가서 httpd라는 서비스 파일을 만듭니다.
nano 편집기로 다음 내용을 입력합니다.
[Unit]
Description=The Apache HTTP Server
[Service]
Type=forking
#EnvironmentFile=(아파치설치경로)/bin/envvars
PIDFile=(아파치설치경로)/logs/httpd.pid
ExecStart=(아파치설치경로)/bin/apachectl start
ExecReload=(아파치설치경로)/bin/apachectl graceful
ExecStop=(아파치설치경로)/bin/apachectl stop
KillSignal=SIGCONT
PrivateTmp=true
입력이 끝났으면 다음 명령어로 적용을 해줍니다.
# systemctl daemon-reload
실행을 시켜봅니다. (아무것도 나타나지 않으면 정상실행)
# systemctl start httpd
제대로 실행 되었는지 확인을 해봅니다.
# systemctl status httpd
다음과 같이 나타나면 정상.
os재부팅시 할때마다 tomcat 실행시키고 싶다면 다음 명령어를 실행해줍니다.
# systemctl enable httpd