워드프레스와 톰캣을 연동하기 위한 테스트 환경 구축입니다.
하나의 서버에서 아파치와 톰캣이 구동되다 보니까 80, 443 포트를 아파치에서 점유해서
톰캣에서는 사용하지 못하는 경우가 생겼습니다.
이때의 해결책으로 AJP를 이용합니다.
1) 인증서 생성
openssl이 포함된 Apache Http Web Server를 설치합니다.
워드프레스 설치 파일에 포함된 Apache Http Web Server를 이용하였는데 포함되어 있습니다.
2) 디렉토리 이동
C:\APM_Setup\Server\Apache\bin 이동
3) 파일 복사
libeay32.dll, ssleay32.dll 파일을 /windows/system32에 복사합니다.
C:\APM_Setup\Server\Apache\conf\onenssl.cnf 파일을 C:\APM_Setup\Server\Apache\bin 으로 복사합니다.
4) csr 파일 생성
openssl req -config openssl.cnf -new -out iclib.jobtoy.com.csr
->iclib.jobtoy.com.csr, privkey.pem 파일 생성
5) 개인 key 파일 생성
openssl rsa -in privkey.pem -out iclib.jobtoy.com.key
-> iclib.jobtoy.com.key 파일 생성
6) 인증서 파일 생성
openssl x509 -in iclib.jobtoy.com.csr -out iclib.jobtoy.com.crt -req -signkey iclib.jobtoy.com.key -days 365
-> iclib.jobtoy.com.crt 파일 생성
7) 생성 파일 이동
개인 key 파일(iclib.jobtoy.com.key), 인증서 파일(iclib.jobtoy.com.crt)을
C:\APM_Setup\Server\Apache\conf\ssl 으로 이동시킵니다.
2. Apache Http Web Server와 톰캣 연동하기
1) C:\APM_Setup\Server\Apache\conf\include\httpd.conf 제일 아래쪽에 추가
LoadModule jk_module modules/mod_jk.so
include conf/include/mod-jk.conf
2) C:\APM_Setup\Server\Apache\conf\include\mod-jk.conf 만들기
JkWorkersFile conf/include/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMount /mobile/* worker1
JkMount /ICLIB_MANAGER/* worker1
3) C:\APM_Setup\Server\Apache\conf\include\workers.properties 만들기
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
4) 톰캣7 설정하기
4-1) C:\Tomcat 7.0\conf\server.xml
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
...
<Host name="iclib.jobtoy.com" appBase="C:\webapps\iclib.jobtoy.com" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="miclib.jobtoy.com_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
...
</Engine>
4-2) iclib.jobtoy.com 폴더 생성
C:\Tomcat 7.0\conf\Catalina\iclib.jobtoy.com
4-3) C:\webapps\iclib.jobtoy.com 폴더 생성 및 mobile, ICLIB_MANAGER 웹어플리케이션 복사
5) 접속 테스트
3. SSL 접속 설정하기
1) C:\APM_Setup\Server\Apache\conf\httpd.conf 수정하기
1-1) sso 관련 주석 풀기
LoadModule ssl_module modules/mod_ssl.so
1-2) 제일 아래쪽에 추가
<IfModule mod_ssl.c>
Include conf/extra/httpd-ssl.conf
</IfModule>
2) C:\APM_Setup\Server\Apache\conf\extra\httpd-ssl.conf 수정하기
<VirtualHost *:443>
# General setup for the virtual host
DocumentRoot "C:/APM_Setup/htdocs"
ServerName iclib.jobtoy.com:443
ServerAdmin iclib@jobtoy.com
ErrorLog "C:/APM_Setup/Server/Apache/logs/ssl_error.log"
TransferLog "C:/APM_Setup/Server/Apache/logs/ssl_access.log"
SSLCertificateFile "C:/APM_Setup/Server/Apache/conf/ssl/iclib.jobtoy.com.crt"
SSLCertificateKeyFile "C:/APM_Setup/Server/Apache/conf/ssl/iclib.jobtoy.com.key"
#SSLCertificateChainFile "C:/APM_Setup/Server/Apache/conf/server-ca.crt"
JkMount /mobile/* worker1
JkMount /ICLIB_MANAGER/* worker1
</VirtualHost>
3) 테스트하기
[jsp] 아파치 웹 서버와 톰캣 연동과 https 설정
'programming > jsp' 카테고리의 다른 글
[jsp] port 상태 확인하기 (0) | 2013.02.13 |
---|---|
[jsp] request.getRemoteAddr()에서 ipv6 로 보일 경우 (1) | 2013.02.12 |
[JSTL] 다국어 비교하기 (0) | 2013.01.29 |
[jsp] 다중 IP에서 IIS와 톰캣으로 80, 443 port(포트) 여러개 쓰기 환경 설정 (0) | 2013.01.17 |
[jsp] 웹에디터 CKEditor와 CKFinder 함께 사용하기 (8) | 2012.11.14 |