[Linux] CentOS 7 Apache Source 설치

2020. 3. 1. 15:53Server/Linux

Apache란? 

 - 세계적으로 가장 많이 쓰이는 웹 서버이다.

 - HTTP 프로토콜을 따르고 포트는 80포트가 기본이다.

 - 윈도우 서버에서는 IIS이지만 리눅에서는 보통 Apache가 많이 쓰임

 

1. Apache 설치 전 필수 설치(Yum)

2. apache 폴더 생성

3. wget명령어로 pcre 다운로드 받기

ftp://ftp.pcre.org/pub/pcre/

불러오는 중입니다...

 - pcre를 다운로드를 받은 상태, 또한 pcre2는 설치 진행이 까다로움으로 pcre를 다운로드를 진행

 

4. 다운로드 받은 pcre 압축 해제

 - 해당 위에 사진은 압축을 해제한 상태에 파일들이다.

5. configure한 후 make && make install 진행

 - 설치 경로 : /usr/local/src/apache/pcre-8.43 으로 경로 이동 후 진행

  # ./configure

  # make && make install

 

6. wget 명령어로 httpd, apr, apr-util 압축 파일 다운로드

http://apache.mirror.cdnetworks.com/httpd/

 

Index of /httpd

Index of /dist/httpd Apache HTTP Server Source Code Distributions This download page includes only the sources to compile and build Apache yourself with the proper tools. Download the precompiled distribution for your platform from binaries/. Important Not

apache.mirror.cdnetworks.com

 - 위에 사진은 httpd 설치를 위해 wget명령어로 다운로드 받음

 

http://apache.mirror.cdnetworks.com/apr/

 

Index of /apr

This downloads page includes only the sources to compile and build APR projects, using the proper tools. All of the release distribution packages have been digitally signed (using PGP or GPG) by the ASF committers that constructed them. There will be an ac

apache.mirror.cdnetworks.com

 - apr-1.6.5.tar.gz 파일을 wget 명령어로 다운로드를 받는 명령어

- apr-util-1.6.1.tar.gz 파일을 wget 명령어로 다운로드를 받는 명령어

7. wget 명령어로 다운로드 받은 파일을 전부 압축 해제

  # tar -zxvf httpd-2.4.38.tar.gz

  # tar -zxvf apr-1.6.5.tar.gz

  # tar -zxvf apr-util-1.6.1.tar.gz

 - 압축 해제 후, 새로 생긴 디렉토리

 

8. 압축 해제 한 후, 새로 생긴 apr* 파일들을 httpd 디렉토리로 이동

 - apr-1.6.5 은 /srclib/apr, apr-util-1.6.1 파일은 /srclib/apr-util 디렉토리로 이동

 

9. httpd configure 한 후, make & make install 진행

10. httpd 서비스 등록

# vi /usr/lib/systemd/system/httpd.service  - 새로 생성

[Unit]
Description=Apache Service

[Service]
Type=forking
PIDFile=/usr/local/apache/logs/httpd.pid
ExecStart=/usr/local/apache/bin/apachectl start
ExecReload=/usr/local/apache/bin/apachectl graceful
ExecStop=/usr/local/apache/bin/apachectl stop
KillSignal=SIGCONT
PrivateTmp=true

[Install]
WantedBy=multi-user.target

- vi에 내용 붙여 넣기

- httpd 시작 후 , 해당 프로세스가 정상적인지 확인 진행

 

11. 80포트 방확벽 정책 설정(firewall)

 - 현재 ports에는 ssh 포트만 허용이 되어 있는 상태

 - 웹으로 통신이 가능한 기본 포트인 80포트 정책으로 설정

 - 80포트 설정 후 다시 조회 했을 때 ports에 80포트가 정책으로 허용이 되어 있는 상태

 - It works! 라는 페이지가 나오면 정상적으로 설치가 된 상태