httpd.conf에서 httpd는 http daemon을 의미하여 HTTP 프로토콜을 처리하는 서버 프로세스이다.
httpd.conf는 이 서버의 설정 파일로, Apache HTTP Server의 동작 방식과 설정을 정의합니다.
Daemon: Unix-like 운영 체제에서 백그라운드에서 실행되는 프로그램을 의미합니다. 주로 서버 또는 서비스로서 동작하는 프로세스를 가리킵니다.
Apache24의 설정파일안의 mod_jk.conf라는 파일안의 내용 중 JkMount /*/servlet/* tomcat9 의 해석:
Apache HTTP Server의 mod_jk 모듈을 사용하는 mod_jk.conf 파일 내에 있는 JkMount /*/servlet/* tomcat9 설정은 Apache와 Tomcat 서버 간의 통신을 설정하는 지시문입니다. 이 설정의 의미를 하나씩 풀어보겠습니다.
JkMount 지시문
JkMount는 Apache HTTP 서버가 받은 요청을 Tomcat에 전달할 경로를 정의하는 설정입니다. 이 지시문은 **AJP (Apache JServ Protocol)**을 통해 Apache가 Tomcat 서버로 요청을 포워딩하도록 합니다.
설정 코드 해석: JkMount /*/servlet/* tomcat9
- JkMount:
- JkMount는 특정 URL 패턴에 대한 요청을 Tomcat으로 전달하라는 Apache의 지시문입니다. mod_jk 모듈이 이를 처리하여, 요청을 AJP 프로토콜을 통해 Tomcat 서버로 전달합니다.
- /*/servlet/*:
- 이 부분은 요청 URL의 경로 패턴을 나타냅니다.
- /*/servlet/*는 모든 경로 중에서 /servlet/를 포함하는 경로에 대한 요청을 의미합니다.
- 예를 들어, http://yourserver.com/abc/servlet/xyz와 같은 URL이 이 패턴에 매칭됩니다.
- 여기서 *는 와일드카드로, 경로의 어떤 값도 매칭될 수 있다는 것을 의미합니다.
- 이 설정은 /servlet/ 경로를 포함하는 URL에 대한 요청을 모두 Tomcat 서버로 전달하도록 설정합니다.
- tomcat9:
- tomcat9은 Apache와 Tomcat 간의 연결을 정의하는 자원 이름입니다. 이는 mod_jk가 Tomcat 인스턴스를 식별하고(mod_jk는 아파치에서 사용하는 모듈이므로 아파치측에서 톰켓의 자원을 식별하기 위해 tomcat9라는 이름의 자원을 아파치 측에서 사용하는 것이다)요청을 전달할 때 사용하는 이름입니다.
- 보통 이 자원은 mod_jk.conf 파일 내에서 다른 설정(예: JkWorkersFile, JkMountFile, JkLogFile 등)을 통해 정의되며, Tomcat 9 서버로의 연결을 설정합니다.
JkMount에서 **jk**와 **mount**의 의미는 다음과 같습니다:
(Jk=mod_jk, mount=오르다? Nono 여기서는 '자원에 연결하다' 라는 의미) 즉, /*/servlet/* 이라는 경로를 tomcat9이라는 Apache가 가지고 있는 자원이면서 tomcat에 연결되어 있는 자원에 연결한다 라는 의미임)
1. **jk**의 의미
- **jk**는 mod_jk 모듈의 약자입니다. mod_jk는 Apache HTTP Server와 Tomcat 서버 간의 연결을 처리하는 모듈입니다.
- 이 모듈은 **AJP (Apache JServ Protocol)**을 사용하여, Apache HTTP Server와 Tomcat 간의 요청을 전달하고, Tomcat에서 처리한 결과를 Apache가 클라이언트에게 반환하는 역할을 합니다.
- **jk**는 mod_jk 모듈이 사용하는 접두어로, 이 모듈이 Apache와 Tomcat을 연결하는 작업을 수행한다는 것을 나타냅니다.
2. **Mount**의 의미
- **mount**는 URL 패턴을 지정하고, 이 URL 패턴에 해당하는 요청을 Tomcat 서버로 전달하겠다는 의미입니다.
- 즉, **"어디에 요청을 전달할지(어디에 mount 할지)"**를 지정하는 설정입니다.
- JkMount 지시문은 Apache가 어떤 URL 패턴을 Tomcat 서버로 전달할지 정의하는 데 사용됩니다.
- 예를 들어, JkMount /app/* tomcat9라고 설정하면, /app/로 시작하는 모든 요청이 Tomcat 서버로 전달됩니다.
'회사관련 모든글' 카테고리의 다른 글
아파치의 Document root(홈)와 톰켓의 Context root(홈)에 대하여 (0) | 2024.11.06 |
---|---|
Apache 80, 443 port 사용에 대하여 (0) | 2024.11.05 |
Tomcat 8080, 8009포트 이용에 관하여 (0) | 2024.11.05 |
아파치 설정 관련한 실행 파일경로 불일치 오류 수정 (0) | 2024.10.07 |
Mod_jk에 대하여(Apache와 Tomcat을 연동시켜 주는 모듈), Mod_jk와 AJP의 비교. (1) | 2024.10.06 |