아파치(Apache) 설치 및 설정 내용은 다음 게시글을 참고하자.
만약 도메인 연결 필요 없이 아이피로 접근이 가능하다면 AJP 로 분기하는 것이 훨씬 편하고 간편하다.
참고로 모든 전제는 SpringBoot의 내장톰캣을 사용하므로 외부 톰캣을 별도로 설치하지 않았다.
Apache AJP 포트 설정 관련해서는 다음 내용을 참고하자
위 내용에서 톰캣 연동할 필요는 없고, Apache 설정과 workers.properties 설정으로 프로젝트의 컨텍스트와 AJP 포트연결만해주면된다.
그럼 도메인 연결은 어떻게 할까?
물론 외장 톰캣(Tomcat)이 설치되어있다면 Hostname 설정으로 도메인을 연결하면된다.
하지만 내장톰캣을 사용하면서 외장 톰캣 설치를 안했기 때문에 Apache 만으로 도메인을 분기하려고 한다.
도메인 www.aaa.kr 과 www.bbb.kr 모두 IP를 222.222.0.1로 연결을 했다고 가정하자.
IP로 접근이 가능하다면 프로젝트의 ContextPath 와 AJP 설정하여
222.222.0.1:80/프로젝트1 혹은 222.222.0.1:80/프로젝트2 로 접근하면 된다.
하지만 도메인으로 분기해야하기 때문에 현재 상황에서 www.aaa.kr 혹은 www.bbb.kr 을 들어가면 아파치(Apache) 초기화면이 나올 것이다.
Apache Proxy 설정 시작하기
Apache/conf 에서 httpd.conf 를 열어 아래 주석을 풀어준다.
LoadModule proxy_module_modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
Apache/conf/extra 에서 httpd-vhosts.conf 파일을 열어 VirtualHost 설정을 다음과 같이 해준다.
여기서 80은 Apache로 Listen 설정한 (외부에서 접속할 수 있는) 포트이다.
ServerName과 ServerAlias는 실제 도메인 주소를 입력하면되고,
ProxyPass와 ProxyPassReverse 에는 현재 서버에서 돌아가고 있는 프로젝트 접속 경로를 적어주면 된다.
<VirtualHost *:80>
ServerName www.aaa.kr
ServerAlias aaa.kr
ServerAlias www.aaa.kr
ServerAlias http://www.aaa.kr
ProxyRequest Off
ProxyPreserveHost On
ProxyPass / http://localhost:8081/
ProxyPassReverse / http://localhost:8081/
</VirtualHost>
<VirtualHost *:80>
ServerName www.bbb.kr
ServerAlias bbb.kr
ServerAlias www.bbb.kr
ServerAlias http://www.bbb.kr
ProxyRequest Off
ProxyPreserveHost On
ProxyPass / http://localhost:8082/
ProxyPassReverse / http://localhost:8082/
</VirtualHost>
** 프로젝트 ContextPath 설정을 하게 되면 다음과 같은 css/js 경로 에러가 발생하니 ContextPath를 제외하고 설정해보자.
'Front > WebServer' 카테고리의 다른 글
[Nginx] 차세대 경량 웹 서버 엔진엑스(Nginx)란? (0) | 2022.12.15 |
---|---|
[WebTobe] TmaxSoft 웹투비 컴파일 및 시작/종료 명령어 (0) | 2021.05.28 |
[Apache] AH00558 : httpd: Could not reliably determine the server's fully qualified domain name, ~ (0) | 2021.03.12 |
[Apache] 윈도우10 아파치 AJP 설정 및 톰캣 연동하기 (0) | 2021.03.11 |
VCRUNTIME140.dll 오류 원인 및 해결방법 (2) | 2021.03.10 |
댓글