Apache与Tomcat的三种连接方式介绍
?
# (httpd.conf)
# 加载mod_jk模块
LoadModule jk_module modules/mod_jk.so
?
#
# Configure mod_jk
#
?
JkWorkersFile conf/workers.properties
JkMountFile conf/uriworkermap.properties
JkLogFile logs/mod_jk.log
JkLogLevel warn
#
# workers.properties
#
?
?
# list the workers by name
?
worker.list=DLOG4J, status
?
# localhost server 1
# ------------------------
worker.s1.port=8109
worker.s1.host=localhost
worker.s1.type=ajp13
?
# localhost server 2
# ------------------------
worker.s2.port=8209
worker.s2.host=localhost
worker.s2.type=ajp13
worker.s2.stopped=1
?
worker.DLOG4J.type=lb
worker.retries=3
worker.DLOG4J.balanced_workers=s1, s2
worker.DLOG4J.sticky_session=1
?
/*=DLOG4J
/jkstatus=status
?
!/*.gif=DLOG4J
!/*.jpg=DLOG4J
!/*.png=DLOG4J
!/*.css=DLOG4J
!/*.js=DLOG4J
!/*.htm=DLOG4J
!/*.html=DLOG4J
ProxyPass /images !
ProxyPass /css !
ProxyPass /js !
?
ProxyPass / balancer://example/
<Proxy balancer://example/>
BalancerMember ajp://server1:8080/
BalancerMember ajp://server2:8080/
BalancerMember ajp://server3:8080/
</Proxy>
?
采用proxy的连接方式,需要在Apache上加载所需的模块,mod_proxy 相关的模块有
mod_proxy.so、mod_proxy_connect.so、mod_proxy_http.so、mod_proxy_ftp.so、mod_proxy_ajp.so, 其中mod_proxy_ajp.so只在Apache 2.2.x中才有。如果是采用 http_proxy 方式则需要加载 mod_proxy.so 和 mod_proxy_http.so;如果是 ajp_proxy 则需要加载mod_proxy.so和mod_proxy_ajp.so这两个模块。