설치
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서버가 있기 때문에 보안이 강화된다.
요청이 한 곳으로 집중되기 때문에 확장 가능성 (트래픽 감시, 로그 기록)
참고
설치
모듈 추가
http://manpages.ubuntu.com/manpages/trusty/man8/a2enmod.8.html
'서버' 카테고리의 다른 글
[Elasticsearch] index 매핑 (analyzed, not_analyzed, no) (0) | 2017.12.01 |
---|---|
[Elasticsearch] 모니터링 툴 (0) | 2017.11.30 |
[Elasticsearch] 클러스터 구성 (2) | 2017.11.30 |
[Elasticsearch] 용어 정리 (0) | 2017.11.29 |
[ElasticSearch] 윈도우 설치 및 기본 동작 이해 (4) | 2017.08.31 |
EFK Stack 구축 using Docker compose (0) | 2017.08.24 |
Google App Engine 환경에 Spring Boot 배포하기 (0) | 2017.08.09 |
kubernetes 정리 (2) | 2017.01.12 |