셋팅 환경
- 서버 : AWS EC2
- Apache Version : Apache/2.4.29 (Ubuntu)
- Tomcat Version : apache-tomcat-8.5.51
1. Apache2 설치
sudo apt-get install apache2
apache2의 실행과 종료, 재실행 명령어는 다음과 같다.
apache2가 잘 동작하는지 확인하고 다음 순서를 진행한다.
sudo /etc/init.d/apache2 start
sudo /etc/init.d/apache2 stop
sudo /etc/init.d/apache2 restart
Apache2는 기본으로 80 포트를 사용하며 chorme에 http://[사용자 ip]를 통해 Apache2 설치를 확인 할 수 있다.
정상적으로 설치 후 Apache2를 실행하면 다음과 같은 화면이 뜬다.
2. Tomcat 설치
Tomcat을 설치할 폴더로 이동 후 다음과 같은 명령어를 입력한 후
sudo wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.51/bin/apache-tomcat-8.5.51.tar.gz
만약 다음과 같은 오류가 나면
ERROR: cannot verify archive.apache.org's certificate, issued by ‘CN=Sectigo RSA Domain Validation Secure Server CA,O=Sectigo Limited,L=Salford,ST=Greater Manchester,C=GB’:
Unable to locally verify the issuer's authority.
아래의 명령어를 입력해준다.
sudo wget --no-check-certificate https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.51/bin/apache-tomcat-8.5.51.tar.gz
rm apache-tomcat-8.5.51.tar.gz
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
위와 같은 문구가 출력된다면 Java 설치가 안되어 있거나, 환경변수 설정이 안되어 있으므로 아래 게시물을 통해 Java를 먼저 설치해준다.
JAVA 설치하기 : https://doqtqu.tistory.com/104
만약 톰캣의 설치가 문제없이 완료되었다면 아래의 명령어로 tomcat을 실행하고 http://[사용자 ip]:8080 를 통해서 톰캣의 실행을 확인한다. 실행에 성공하면 아래와 같은 고양이 페이지가 뜬다.
3. mod_jk 설치
mod_jk 설치 이전에 apache2와 tomcat을 먼저 깔아줘야 한다.
sudo apt-get install libapache2-mod-jk
4. workers.properties 생성하기
다음 명령어를 통해서 worker 환경설정을 추가한다.
sudo vi /etc/apache2/workers.properties
생성된 파일에 다음과 같이 셋팅한다.
workers.tomcat_home = tomcat 설치 경로 (2번 apache-tomcat-8.5.21의 경로)
workers.java_home = jdk 설치 경로 (보통 /usr/lib/jvm/경로에 있다.)
worker.list = [worker 이름] (사용자 지정 아무거나)
worker.[worker 이름].port = 8009
worker.[worker 이름].host = ip 주소 (기본 localhost)
worker.[worker 이름].type = ajp13
아래는 예시 화면이다.
5. jk.conf 수정
다음 명령어를 통해서 4번에서 수정한 workerfile 경로를 등록한다.
sudo vi /etc/apache2/mods-available/jk.conf
아래와 같이 기존의 JKWorkersFile ~ 을 주석처리하고
JkWorkersFile /etc/apache2/workers.properties
다음과 같이4번에서 수정한 workerfile의 경로를 입력한다.
6. 000-default.conf 파일 수정
4번에서 만든 worker를 이용해 tomcat의 경로를 root 경로로 root로 설정한다.
sudo vi /etc/apache2/sites-available/000-default.conf
기존의 DocumentRoot ~ 를 주석처리하고 tomcat의 webapps 경로를 입력한다.
JKMount를 통해서 worker를 연결한다. (4번에서 등록한 worker의 이름을 입력하면 된다.)
7. tomcat의 server.xml 수정
2번의 tomcat 설치 경로로 이동해 다음과 같은 명령어를 입력한다.
vi conf/server.xml
아래와 같이 <Connecter port="8009" ~>의 주석을 풀어준다.
톰캣에서 8.5.51와 9.0.31 버전에서 tomcat-apache 연동 설정을 기존대로 구성 시 연동 실패(무한로딩, 403에러 발생)가 발생 하며 AJP 기본값이 루프백 주소를 수신하도록 변경되어 수정해주지 않을 시 503 에러가 발생한다고 한다.
따라서 address와 secretRequired를 위와 같이 추가해주어야 무한로딩을 피할 수 있다.
(자세한 내용은 다음 블로그 참고 https://nirsa.tistory.com/131)
8. Apache2, tomcat 실행
실행 순서는 apache2 -> tomcat 순으로 한다.
sudo /etc/init.d/apache2 start
톰캣 설치 경로로 이동한 후
sh bin/startup.sh
로 톰캣을 실행 시켜준다.
그 후 http://[서버 ip]/로 이동 시 apache2를 통해 tomcat이 실행된다.
https://all-record.tistory.com/188
'BackEnd > Server' 카테고리의 다른 글
[Apache2] .htaccess 설정 파일 사용하기 (4) | 2021.02.07 |
---|---|
AWS EC2 .pem 파일없이 접속하기 (0) | 2021.02.06 |
[SSL] Letsencrypt SSL 인증서 수동 갱신하기 (0) | 2021.01.19 |
아파치(Apache2) + 톰캣(Tomcat8.5) JkMount로 url 구분하기 (0) | 2020.03.09 |
아파치(Apache2) + 톰캣(Tomcat8.5) SSL 인증서 등록하기 (https 연결하기) (0) | 2020.03.06 |
댓글