해당작업은 CentOS 7으로 구동했다.
CentOS 7 Version
순서대로 진행하면 구축할 수 있다.
모든진행은 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 )
이 경우, # wget http://mirror.apache-kr.org //httpd/httpd-2.4.41.tar.gz 으로 입력하면 됨.
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/ )
가장 최신파일날짜 확인, .tar.gz 파일 다운로드
2-3. apr-util 다운로드
# wget http://apache.mirror.cdnetworks.com/apr/apr-util-x.x.x.tar.gz
(링크: http://apache.mirror.cdnetworks.com/apr/ )
가장최신버전 .tar.gz 를 다운로드
2-4. pcre 다운로드
# wget https://ftp.pcre.org/pub/pcre/pcre2-x.x.tar.gz
(링크: https://ftp.pcre.org/pub/pcre/ )
최신버전 10.34 로 다운로드
위와 같이 /tmp/lib/에 4개의 .tar.gz 파일이 다운로드 되어야 한다.
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. 압축을 푼 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
/usr/local/src/ 에 4개 디렉터리가 옮겨진것을 확인한다.
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
80포트 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
disabled인 경우, 아래처럼 enable 시켜주기
# systemctl enable httpd
enabled 확인
11. http://ip주소 확인하기. (ifconfig 이용하여 내부 ip확인)
ip확인
http://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
31번 줄을보면, ServerRoot에 html의 기본 경로가 나와있다.
13-2. 웹 글을 변경 해본다. ServerRoot 아래 htdocs/index.html에 Default인 'It works'가 있을 것이다.
이를 'Hello World!'로 변경해본다.
# vim /usr/local/apache2/htdocs/index.html
html 코드로 It works! 가 쓰여있다.
편집하여 변경. 저장한다.
해당 웹페이지 글이 변경됨을 확인할 수 있다.
** (참고) 아파치 상태 사용 명렁어
출처: https://goddaehee.tistory.com/75
참고 링크
https://goddaehee.tistory.com/75
4. [CentOS7] 컴파일 하여 아파치(Apache) 설치
[CentOS7] 컴파일 하여 아파치(Apache) 설치 ▶ 0. gcc 패키지 설치 # yum -y install gcc make gcc-c++ pcre-devel GCC 란? - GNU 컴파일러 모음(GNU Compiler Collection, 줄여서 GCC)는 GNU 프로젝트의 일환으..
goddaehee.tistory.com
http://library.gabia.com/contents/infrahosting/3513
가비아 라이브러리
IT 콘텐츠 허브
library.gabia.com
만약 문제가 생겨 제거할 때는 아래 참고.
https://ansan-survivor.tistory.com/121
CentOS 아파치(apache) 제거하기
아파치를 구축했으나, 뭔가 꼬이게 되어 해결할 수 없게되면 제거 후 재설치를 해야 한다. 이전에 포스팅에 설치했던 과정을 기준으로 한다. https://ansan-survivor.tistory.com/120 CentOS 아파치(apache) 웹 서..
ansan-survivor.tistory.com
* 아마존클라우드 AWS으로 웹서비스 구축 방법 * (추가)
https://ansan-survivor.tistory.com/1063
[AWS] 아마존 클라우드에 웹서비스 수동으로 구축하기 (과금방지를 위해 서비스 없이 수동으로) P
AWS를 사용하기 위해서는 AWS를 가입해야 한다. 방법은 아래 참고. https://ansan-survivor.tistory.com/1058 [AWS] 아마존 AWS 클라우드에 회원가입하고 사용하기 (무료, AWS free tier) 아마존 AWS 클라우드 리..
ansan-survivor.tistory.com