Web Servers

[2편] Apache 설치 및 구성 실무 가이드 – MPM, 가상호스트, mod_jk 연동

midworker 2025. 5. 15. 22:37
반응형

[2편] Apache 설치 및 구성 실무 가이드 – MPM, 가상호스트, mod_jk 연동

이전 1편에서는 Apache와 Tomcat의 개념 및 설치 준비사항을 정리했습니다.
이번 글에서는 Apache 설치 후, 실제 운영환경에서 사용하는 주요 구성 항목들을 다룹니다.


✅ Apache 설치 요약 복습

필수 설치 명령

./configure --prefix=/data/apache24 \
  --enable-so --enable-rewrite --enable-ssl \
  --enable-mods-shared=all --enable-mpms-shared=all \
  --with-included-apr --with-included-apr-util
make && make install

설치 완료 후, 실행 경로:

/data/apache24/bin/apachectl start

✅ MPM(Multi-Processing Module) 설정

Apache는 MPM을 통해 프로세스/스레드 방식을 선택할 수 있습니다.

🔹 설정 파일: httpd.conf 또는 extra/httpd-mpm.conf

<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadsPerChild      25
    MaxRequestWorkers   150
    MaxConnectionsPerChild  1000
</IfModule>
MPM 종류 특징
prefork 프로세스 기반, 안정성 ↑
worker 스레드 기반, 메모리 효율 ↑
event keep-alive 연결 처리 최적화 (Apache 2.4+ 기본)

✅ 가상호스트 설정 (도메인별 구분)

🔹 설정 파일: httpd-vhosts.conf

<VirtualHost *:80>
    ServerName www.domain1.com
    DocumentRoot "/data/apache24/htdocs/domain1"
    ErrorLog "logs/domain1_error.log"
    CustomLog "logs/domain1_access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerName www.domain2.com
    DocumentRoot "/data/apache24/htdocs/domain2"
    ErrorLog "logs/domain2_error.log"
    CustomLog "logs/domain2_access.log" combined
</VirtualHost>

DNS 또는 /etc/hosts 파일을 통해 도메인별 테스트 가능


✅ mod_jk 연동 설정 (Tomcat 연동)

1. mod_jk.so 모듈 다운로드 및 Apache에 복사

cp mod_jk.so /data/apache24/modules/

2. httpd.conf에 모듈 로드 및 설정 포함

LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info

3. workers.properties 예시

worker.list=tomcat1
worker.tomcat1.type=ajp13
worker.tomcat1.host=127.0.0.1
worker.tomcat1.port=8009

4. URI 매핑 (JkMount)

JkMount /app1/* tomcat1

✅ 로그 설정 팁

access_log, error_log 위치:

/data/apache24/logs/

로그 포맷 변경

LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

✅ 서비스 등록 및 자동 실행

cp /data/apache24/bin/apachectl /etc/init.d/httpd
chmod +x /etc/init.d/httpd
chkconfig --add httpd
chkconfig httpd on

✅ 마무리

이번 2편에서는 Apache 설치 후 실무에 꼭 필요한 설정인 MPM, 가상호스트, mod_jk 연동, 로그 및 서비스 설정을 정리했습니다.
다음 3편에서는 Tomcat 설치 및 환경 설정, 커넥터 구성, WAR 배포 등에 대해 다룹니다.

반응형