apache 설치 전 root 계정으로 접속한다.
yum -y install gcc make gcc-c++ pcre-devel
http://httpd.apache.org/download.cgi
# 다운로드 경로 지정
cd /home/user
mkdir apache_tar
cd apache_tar
# 파일 다운로드
wget https://dlcdn.apache.org/httpd/httpd-2.4.54.tar.gz
wget https://dlcdn.apache.org/apr/apr-1.7.0.tar.gz
wget https://dlcdn.apache.org/apr/apr-util-1.6.1.tar.gz
https://github.com/PCRE2Project/pcre2/releases
# wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.40/pcre2-10.40.tar.gz
mv * /usr/local/src/
cd /usr/local/src/
#파일 확인
ls -al
tar zxvf httpd-2.4.54.tar.gz
tar zxvf apr-1.7.0.tar.gz
tar zxvf apr-util-1.6.1.tar.gz
tar zxvf pcre2-10.40.tar.gz
cd apr-1.7.0/
# ./configure = 설치를 위한 환경 설정 | --prefix = 절대경로 --with 라이브러리 참조
# 절대경로 지정
./configure --prefix=/usr/local/src/apr-1.7.0
# make = configure에 의해 만들어진 makefile로 프로그램 컴파일
# make install = 컴파일된 프로그램, 환경파일, 데이터 파일을 지정된 위치에 복사하는 과정
make && make install
# apr-util 경로 이동
cd /usr/local/src/apr-util-1.6.1/
# --with-apr은 앞에서 설치한 APR 버전으로 입력
./configure --prefix=/usr/local/src/apr-util-1.6.1 --with-apr=/usr/local/src/apr-1.7.0
# 설치
make && make install
아래와 같이 에러 발생 시 expat-devel을 설치한다.
yum install expat-devel
다시 make 명령어를 이용하여 설치한다.
설치 완료시 아래와 같이 메시지가 표시된다.
cd /usr/local/src/pcre2-10.40/
# --prepix, --with-apr은 앞에서 설치한 apr-util, apr 버전으로 입력
./configure --prefix=/usr/local/src/apr-util-1.6.1 --with-apr=/usr/local/src/apr-1.7.0
make && make install
cd /usr/local/src/httpd-2.4.54/
./configure --prefix=/usr/local/apache2 --enable-modules=most --enable-mods-shared=all --enable-so --with-apr=/usr/local/src/apr-1.7.0 --with-apr-util=/usr/local/src/apr-util-1.6.1
make && make install
# 서버 이름 설정
vim /usr/local/apache2/conf/httpd.conf
# ServerName 을 검색해서 아래와 같이수정
----
ServerName 127.0.0.1:80
# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other
# <Directory> blocks below.
<Directory />
AllowOverride none
# Require all denied
Require all granted
</Directory>
----
# <Directory>: https://httpd.apache.org/docs/2.4/en/mod/mod_authz_core.html#require
# 서버 이름 설정 안할시 나타나는 에러
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::fe:64ff:fe01:513a%eth0. Set the 'ServerName' directive globally to suppress this message
참조
https://velog.io/@bonjaski0989/AWS-Apache-APR-APR-util-%EC%84%A4%EC%B9%98
https://ansan-survivor.tistory.com/120