해당작업은 CentOS 7으로 구동했다.
순서대로 진행하면 구축할 수 있다.
모든진행은 Root로 진행한다. (명령어 su 입력 후 Password 입력)
1. GCC 패키지 설치
# yum -y install gcc make gcc-c++ pcre-devel
2. 임시 디렉터리 생성 후, 웹에서 필요파일 다운로드. (apache, apr, apr-util, pcre 총 4개 받음)
2-0. lib 디렉터리 생성.
# cd /tmp
# mkdir lib
2-1. apache 다운로드 (x.x.x 버전명은 아래 링크에 들어가서 확인한다.)
# wget http://mirror.apache-kr.org//httpd/httpd-x.x.x.tar.gz
(링크: http://httpd.apache.org/download.cgi)
2-2. apr 다운로드 (위와 같은 방식으로 링크에 들어가서 최신안정버전을 x.x.x 버전을 다운한다.)
# wget http://mirror.apache-kr.org/apr/apr-x.x.x.tar.gz
(링크: http://mirror.apache-kr.org/apr/)
2-3. apr-util 다운로드
# wget http://apache.mirror.cdnetworks.com/apr/apr-util-x.x.x.tar.gz
(링크: http://apache.mirror.cdnetworks.com/apr/)
2-4. pcre 다운로드
# wget https://ftp.pcre.org/pub/pcre/pcre2-x.x.tar.gz
(링크: https://ftp.pcre.org/pub/pcre/)
3. 4개 파일 모두 압축 풀기
=> tar xvfz [파일명.tar.gz] 방식으로 4개파일 압축을 푼다.
# tar xvfz apr-1.7.0.tar.gz
# tar xvfz apr-util-1.6.1.tar.gz
# tar xvfz httpd-2.4.41.tar.gz
# tar xvfz pcre2-10.34.tar.gz
4. 압축을 푼 4개 디렉터리를 '/usr/local/src' 으로 옮긴다.
# mv apr-1.7.0 apr-util-1.6.1 httpd-2.4.41 pcre2-10.34 /usr/local/src
해당 디렉터리로 이동.
# cd /usr/local/src
5. 해당 디렉터리에서 아래와 같이 설치를 진행.
5-1. APR설치
# cd/usr/local/src/apr-1.7.0
# ./configure --prefix=/usr/local/src/apr-1.7.0
# make && make install
5-2. APR-UTIL설치 (여기서 --with뒤에는 반드시 내가 설치한 APR버전을 넣는다)
# cd/usr/local/src/apr-util-1.6.1
# ./configure --prefix=/usr/local/src/apr-util-1.6.1 --with-apr=/usr/local/src/apr-1.7.0
# make && make install
(혹시 make에러 #include <expat.h> 어쩌구 저쩌구가 발생하면, 아래와 같이 설치한다. )
# yum install expat-devel
5-3. PCRE 설치 (여기서 --with뒤에는 반드시 내가 설치한 APR, APR-UTIL버전을 넣는다)
# cd /usr/local/src/pcre2-10.34
# ./configure --prefix=/usr/local/src/apr-util-1.6.1 --with-apr=/usr/local/src/apr-1.7.0
# make && make install
5-4. 아파치(httpd) 설치 (여기서 --with뒤에는 반드시 내가 설치한 APR, APR-UTIL버전을 넣는다)
# cd /usr/local/src/httpd-2.4.41
# ./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
6. 설정하기
(필자는 vim 편집기를 이용했으나, nano편집기를 이용해도 상관없다.)
# vim /usr/local/apache2/conf/httpd.conf
아래 줄을 수정한다.
#ServerName www.example.com:80 => ServerName 127.0.0.1:80
7. 실행하기
# /usr/local/apache2/bin/httpd -k start
8. 80번 포트 동작여부 확인하기
# netstat -tulpn | grep LISTEN
# netstat -tulpn | grep LISTEN
9. 포트 80번 방화벽 개방하기
# firewall-cmd --permanent --zone=public --add-port=80/tcp
# firewall-cmd --reload
# firewall-cmd --list-ports
10. 서비스 작동여부 및 작동시키기 (disabled 인경우 enable로 바꿔주기)
# systemctl list-unit-files | grep httpd
# systemctl enable httpd
11. http://ip주소 확인하기. (ifconfig 이용하여 내부 ip확인)
11-1. 웹 구동 start 와 stop 시키기
# /etc/init.d/httpd stop
# /etc/init.d/httpd start
12. 재부팅시에도 자동으로 재가동 하도록 만듦.
# cp -a /usr/local/apache2/bin/apachectl /etc/init.d/httpd
# ln -s /etc/init.d/httpd /etc/rc3.d/S99httpd
# /etc/init.d/httpd -V
13. apache 설정파일 위치 확인, 웹 페이지 글 변경하기. 기본 default로 'It works!'라고 쓰여있는데,
아래와 같이 html문법을 수정하여 변경 할수있다.
13-1. vim 또는 nano 텍스트 편집으로, ServerRoot를 확인한다. 이것이 기본 Path 이다. ( :set nu 번호표시 명령)
# vim /usr/local/apache2/conf/httpd.conf
13-2. 웹 글을 변경 해본다. ServerRoot 아래 htdocs/index.html에 Default인 'It works'가 있을 것이다.
이를 'Hello World!'로 변경해본다.
# vim /usr/local/apache2/htdocs/index.html
** (참고) 아파치 상태 사용 명렁어
참고 링크
https://goddaehee.tistory.com/75
http://library.gabia.com/contents/infrahosting/3513
만약 문제가 생겨 제거할 때는 아래 참고.
https://ansan-survivor.tistory.com/121
* 아마존클라우드 AWS으로 웹서비스 구축 방법 * (추가)
https://ansan-survivor.tistory.com/1063
'리눅스 > CentOS' 카테고리의 다른 글
[CentOS 7] 아파치(apache) 웹 서버 자동으로 구축하기 (0) | 2020.03.01 |
---|---|
[CentOS] 아파치(apache) 제거하기 (0) | 2020.02.23 |
[CentOS 7] Linux Samba 구축하기 / 윈도우와 공유폴더 만들기 / 리눅스 윈도우 폴더 공유 (0) | 2020.01.05 |
[CentOS 7] terminator(터미네이터) 설치하는 방법. 단축키 및 사용법. (0) | 2020.01.05 |
[CentOS 7] Gnome GUI (그놈GUI) 단축키 설정하기 또는 수정/보기, 터미널 단축키 설정 (1) | 2020.01.05 |