본문 바로가기
서버

Apache2 설치 (Ubuntu 16.04)

by 탁구치는 개발자 2017. 9. 15.

설치


ubuntu 기본 소프트웨어 저장소에 사용할 수 있는 apache가 있다.

1. root 로그인

2. 패키지 관리 툴인 apt-get을 이용하여 apache2를 설치한다. (apache2 설치와 함께 의존하는 프로그램도 함께 설치된다.)

 > apt-get update

 > apt-get install apache2

3. 설치 후 Apache 상태 확인

 > systemctl status apache2

4. Apache 접속

 > hostname -I  명령어를 통해 IP를 알아낸 후 웹 브라우저를 이용하여 http://{IP} 로 접속해보자.

 


Apache Configuration


/etc/apache2/

아파치 설정 디렉토리


/etc/apache2/apache2.conf

아파치 기본 설정 파일


/etc/apache2/ports.conf

아파치 포트 설정 파일


/etc/apache2/sites-available/

virtual host 관리 디렉토리 (아파치에서는 해당 디렉토리를 직접 참조하지는 않는다.)


/etc/apache2/sites-enabled/

virtual host를 이용하기 위한 설정 디렉토리

000-default.conf -> ../sites-available/000-default.conf 와 같이 심볼릭 링크를 이용하여 sites-available 디렉토리 파일을 참조하는 방식으로 사용되어진다.


/etc/apache2/mods-available/, /etc/apache2/mods-enabled/

모듈 설정 디렉토리



로그


/var/log/apache2 디렉토리



시작,중지


root 로그인

service apache2 start

service apache2 stop



버전 확인


apachectl -version



모듈 사용 설정 확인


apachectl -M



Reverse Proxy 설정


mod_proxy 모듈을 이용해 Reverse Proxy 설정을 하겠다.

root로 로그인

a2enmod 명령어를 통해 아래 모듈 활성화

1
2
3
4
a2enmod proxy
a2enmod proxy_http
a2enmod proxy_balancer
a2enmod lbmethod_byrequests
cs

활성화를 한다고 해서 모듈을 다운로드 받고 설치하는 작업을 하는게 아니다.

단지 mods-available 디렉토리에 존재하는 모듈을 사용 가능한 상태로 만들기 위해 mods-enabled 하위에 심볼릭 링크를 생성한다.


Apache 서버 재시작 하자.

root로 로그인

service apache2 restart



궁금


1. reverse proxy와 forward proxy 차이

대게 인터넷에 떠도는 정보를 얻기 위해서는 브라우저를 키고 도메인을 입력한 후 접속하여 내가 원하는 정보를 취득한다.

여기에 브라우저는 요청자가 되고 정보를 제공하는 웹 서버는 응답자가 된다.

forward proxy는 요청자 앞단에 위치하고 있는 서버를 말하는 것이고 reverse proxy는 응답자 앞단에 위치한다.

여기서 궁금한 것은 reverse라는 단어가 왜 붙었냐는 것인데.. 이유는 아래 흐름을 보면 쉽게 알 수 있다.

server의 전면에 위치하고 있는 reverse proxy는 요청자의 요청을 받아서 서버로 보내주기 때문에 reverse라는 단어가 붙은 것으로 이해하면 되겠다.

L4, L7 스위치도 어찌보면 reverse proxy라고 할 수 있겠다.


2. reverse proxy의 장점

로드 밸런싱 가능

proxy서버에만 방화벽 설정 가능

보안 강화 - 웹 서버가 뚫리면 DB까지 털리지만 proxy서버가 있기 때문에 보안이 강화된다.

요청이 한 곳으로 집중되기 때문에 확장 가능성 (트래픽 감시, 로그 기록)



참고


설치

https://www.digitalocean.com/community/tutorials/how-to-install-the-apache-web-server-on-ubuntu-16-04


모듈 추가

https://www.digitalocean.com/community/tutorials/how-to-use-apache-as-a-reverse-proxy-with-mod_proxy-on-ubuntu-16-04

http://manpages.ubuntu.com/manpages/trusty/man8/a2enmod.8.html