Apache 컴파일 설치

class1119·2022년 11월 21일
0

apache 설치 전 root 계정으로 접속한다.

1. gcc 패키지 설치

yum -y install gcc make gcc-c++ pcre-devel

2. apache 다운로드

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

3. apr 및 apr-util 다운로드

https://dlcdn.apache.org/apr/

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

4. pcre 다운로드

https://github.com/PCRE2Project/pcre2/releases

# wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.40/pcre2-10.40.tar.gz

5. 파일 이동

mv * /usr/local/src/
cd /usr/local/src/

#파일 확인
ls -al

6. 압축 풀기

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

7. 설치

7.1 apr 설치

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

7.2 apr-util 설치

# 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 명령어를 이용하여 설치한다.
설치 완료시 아래와 같이 메시지가 표시된다.

7.3 pcre 설치

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

7.4 apache 설치

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

profile
GIS, OpenLayers, OpenSource, Web, Server 관련 개발

0개의 댓글