사용한 OS : RHEL 7, RHEL 8
[목차]
1. 아파치 설치 전 패키지 설치(yum)
2. 아파치 2.4.57 설치
3. 설치 확인
1. 아파치 설치 전 패키지 설치(yum)
1-1. RHEL 7 에서 진행 할 때
1) C, C++ 컴파일러 설치
- 소스 컴파일 하려면 gcc compiler 필요함
yum install -y gcc gcc-c++
2) XML parcer 라이브러리 설치
- 아파치 2.4 설치 할 때 apr, apr-util, pcre 패키지가 필요하다.
- apr, apr-util, pcre 패키지를 설치하려면 XML parser 라이브러리 설치해야한다.
yum install -y expat expat-devel expat-static
3) PCRE 설치
- wget으로 파일을 받아서 진행
- https://sourceforge.net/projects/pcre/files/pcre/ 에서 받는다.
1-2. RHEL 8에서 진행 할 때
※ make 패키지 설치해준다.(yum)
1) C, C++ 컴파일러 설치
- 소스 컴파일 하려면 gcc compiler 필요함
yum install -y gcc gcc-c++ make
2) XML parcer 라이브러리 설치
- 아파치 2.4 설치 할 때 apr, apr-util, pcre 패키지가 필요하다.
- apr, apr-util, pcre 패키지를 설치하려면 XML parser 라이브러리 설치해야한다.
yum install -y expat expat-devel
3) PCRE 설치
- wget으로 파일을 받아서 진행
- https://sourceforge.net/projects/pcre/files/pcre/ 에서 받는다.
2. Apache 2.4.57 설치
1) 아파치 설치에 필요한 파일 다운로드 (다운로드 파일 경로 : /usr/local/src)
- http
https://dlcdn.apache.org/httpd/
- apr / apr-utils
https://apr.apache.org/download.cgi
- pcre
https://sourceforge.net/projects/pcre/files/pcre/8.45/
$ cd /usr/local/src
# 아파치 다운로드 & 압축해제
wget https://dlcdn.apache.org/httpd/httpd-2.4.58.tar.gz
tar zxvf httpd-2.4.58.tar.gz
# apr 다운로드 & 압축해제
wget https://dlcdn.apache.org/apr/apr-1.7.4.tar.gz
tar zxvf apr-1.7.4.tar.gz
# apr-util 다운로드 & 압축해제
wget https://dlcdn.apache.org/apr/apr-util-1.6.3.tar.gz
tar zxvf apr-util-1.6.3.tar.gz
# prce 다운로드 & 압축해제
wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz
tar zxvf pcre-8.45.tar.gz
2) 컴파일 설치 순서(의존성 문제 떄문에 아래와 같은 순서로 진행 필요함)
arp → arp-util → pcre → httpd
3) apr설치
# arp 소스파일 있는 경로로 이동
cd /usr/local/src/apr-1.7.4
# apr makefile 생성
./configure --prefix=/usr/local/src/apr-1.7.4
# 설치
make && make install
4) apr-util 설치
# arp-util 소스파일 경로로 이동
cd /usr/local/src/apr-util-1.6.3
# arp-util makefile 생성 + 의존성 소스의 경로를 넣어준다.
./configure --prefix=/usr/local/src/apr-util-1.6.3 --with-apr=/usr/local/src/apr-1.7.4
# 설치
make && make install
5) pcre 설치
# pcre 경로로 이동
cd /usr/local/src/pcre-8.45
# makefile 생성 + apr / apr-util 의존소스 경로 넣어서 진행
./configure --prefix=/usr/local/src/pcre-8.45 --with-apr-util=/usr/local/src/apr-util-1.6.3 --with-apr=/usr/local/src/apr-1.7.4
# 설치
make && make install
6) Apache 설치 진행
# httpd 설치 경로로 이동
/usr/local/src/httpd-2.4.57
# makefile 생성 + 의존소스 파일 다 넣어주기
# pcre-config 파일의 경로를 넣어야 함 !!!!
./configure --prefix=/usr/local/src/httpd-2.4.57 --with-apr-util=/usr/local/src/apr-util-1.6.3 --with-apr=/usr/local/src/apr-1.7.4 --with-pcre=/usr/local/src/pcre-8.45/bin/pcre-config
# 설치
make && make install
# 설치 확인
$ /usr/local/src/httpd-2.4.57/bin/apachectl -V
Server version: Apache/2.4.57 (Unix)
Server built: Oct 17 2023 15:10:06
Server's Module Magic Number: 20120211:127
Server loaded: APR 1.7.4, APR-UTIL 1.6.3, PCRE 8.45 2021-06-15
Compiled using: APR 1.7.4, APR-UTIL 1.6.3, PCRE 8.45 2021-06-15
Architecture: 64-bit
Server MPM: event
threaded: yes (fixed thread count)
forked: yes (variable process count)
Server compiled with....
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_PROC_PTHREAD_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=256
-D HTTPD_ROOT="/usr/local/src/httpd-2.4.57"
-D SUEXEC_BIN="/usr/local/src/httpd-2.4.57/bin/suexec"
-D DEFAULT_PIDLOG="logs/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
7) Apache start
/usr/local/src/httpd-2.4.57/conf/httpd.conf 에서 ServerName을 넣어주고 start한다.
3. 아파치 설치확인
1) 브라우저에서 확인
※ 브라우저로 확인 할 때, 방화벽(firewalld)의 활성화 여부를 꼭 체크하자
2) curl 명령어로 확인
curl localhost:80
<html><body><h1>It works!</h1></body></html>
8) 기타 - httpd, apachectl 명령어를 /bin에 복사해두면 편하게 쓸 수 있다.
cd /usr/local/src/httpd-2.4.57/
cp -arpv httpd /bin/
/usr/local/src/httpd-2.4.57/httpd/bin
cp -arpv apachectl /bin/
★ 참고 URL
https://anggeum.tistory.com/entry/Apache-HTTP-Server-v24-%EC%84%A4%EC%B9%98-Source-Compile
https://velog.io/@dongli/Web-%EC%84%9C%EB%B2%84-%EC%86%8C%EC%8A%A4-%EC%84%A4%EC%B9%98
'Infra > Apache' 카테고리의 다른 글
Apache - Tomcat 멀티 인스턴스 로드밸런싱 설정(RHEL7, RHEL8) (0) | 2023.10.20 |
---|---|
Apache MPM (0) | 2023.07.24 |
아파치와 톰캣 멀티 인스턴스 연동하기(httpd.conf 설정) (0) | 2023.07.19 |
아파치와 톰캣 연동(CentOS7, RHEL 7) (0) | 2023.07.19 |
apache 설치 및 이름 기반 가상호스트 사용 (0) | 2023.07.19 |