독까의 이야기

 
Apache2\conf\httpd.conf 수정

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName tomcat1.gunnm.com
    ServerAdmin admin@gunnm.com
    DocumentRoot "C:\tomcat1\webapps\ROOT"
JkMount /* tomcat1
JkMount /*.jsp tomcat1
</VirtualHost>

<VirtualHost *:80>
    ServerName tomcat2.gunnm.com
    ServerAdmin admin@gunnm.com
    DocumentRoot "C:\tomcat2\webapps\ROOT"
JkMount /* tomcat2
JkMount /*.jsp tomcat2
</VirtualHost>

LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel error
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"


Apache2\conf\workers.properties 파일 생성

worker.list=tomcat1,tomcat2

worker.tomcat1.type=ajp13
worker.tomcat1.host=localhost
worker.tomcat1.port=8009
#worker.tomcat1.lbfactor=1

worker.tomcat2.type=ajp13
worker.tomcat2.host=localhost
worker.tomcat2.port=8010
#worker.tomcat2.lbfactor=1



tomcat1\conf\server.xml AJP 설정 변경
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" enableLookups="false" URIEncoding="UTF-8" />

tomcat2\conf\server.xml AJP 설정 변경
    <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" enableLookups="false" URIEncoding="UTF-8" />

 
Apache 서버에 mod_jk-1.2.42-win64-VC14 다운로드 (설치 된 apache 버전과 매칭되는 mod_jk 다운로드 받아야함)

https://www.apachelounge.com/download/ 

C:\Apache24\modules 폴더에 mod_jk.so 복사

Tomcat 설치 서버의 server.xml 의 내용 확인
          <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Apache 서버 C:\Apache24\conf\workers.properties 생성
          worker.list=gunnm
          worker.gunnm.host=톰캣 서버 아이피
          worker.gunnm.port=8009
          worker.gunnm.type=ajp13
          worker.gunnm.cache_timeout=600
          worker.gunnm.socket_keepalive=1
          worker.gunnm.socket_timeout=300
          worker.gunnm.lbfactor=1

Apache 서버 C:\Apache24\conf\httpd.conf 수정
          LoadModule jk_module modules/mod_jk.so
          JkWorkersFile conf/workers.properties
          # Set the jk log level [debug/error/info]
          JkLogLevel info
          JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
          JkMount /* gunnm

IIS 6.0 + 톰캣 5.5 연동 웹사이트 .html 및 .asp 호출 불가

 

1.  IIS 에 test.com 신규 웹사이트 세팅

2.  생성 된 웹사이트에 가상 디렉토리 생성
  -  별칭 : jakarta
  -  경로 : isapi 모듈 이 등록되어 있는 경로 설정 / c:\tomcat\ISAPI\

3.  웹사이트 선택 우클릭 - 속성 - ISAPI 필터 - 추가 - jakarta - 모듈 경로 선택 : c:\tomcat\ISAPI\isapi_redirect.dll - 권한은 "실행" 포함

4.  index.jsp 파일 생성 후 호출 테스트 / 정상 호출 확인

5.  index.asp 및 index.html 파일 생성하여 호출 테스트 / 404 에러 발생 / 에러 코드 발생 주체는 톰캣 / jsp 를 제외한 기타 문서는 IIS 에서 처리해야 되는게 원칙
     ->  IIS 로그 확인 / .jsp 호출 로그만 기록되어 있음

6.  c:\tomcat\confg\uriworkermap.properties 편집
  -  전역 처리 설정값 /*=wlb 주석 처리     =>  #/*=wlb

7.  톰캣 및 IIS 재시작

8.  .html 및 .asp 정상 호출

9.  .jsp 파일 자동 호출 불가 / 기본 문서에 등록되어 있는 .jsp 파일도 웹브라우저에서 직접 파일명 지정해서 호출해야 됨

10.  c:\tomcat\conf\uriworkermap.properties 내용 원복

11.  c:\tomcat\conf\server.xml 편집

12.  호스트 추가
      <Host name="test.com"  appBase="D:\WWW\TEST" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
      <Context path="" docBase="D:\WWW\TEST" debug="5">
      <Logger className="org.apache.catalina.logger.FileLogger" prefix="test.com_log." suffix=".txt" timestamp="true" />
      </Context>
      </Host>
      </Engine>
      </Service>

13.  톰캣 및 IIS 재시작

14.  상태 변동 없음

15.  위 server.xml 추가 내용 중 Alias 값 추가
      <Host name="test.com"  appBase="D:\WWW\TEST" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
      <Context path="" docBase="D:\WWW\TEST" debug="5">
      <Logger className="org.apache.catalina.logger.FileLogger" prefix="test.com_log." suffix=".txt" timestamp="true" />
      </Context>
      <Alias>www.test.com</Alias>
      <Alias>test.com</Alias>
      </Host>
      </Engine>
      </Service>

16.  톰캣 및 IIS 재시작

17.  .asp / .jsp / .html 모두 정상 출력