Apache與Tomcat整合問(wèn)題的新方法我來(lái)公布一個(gè)Apache與Tomcat整合問(wèn)題的新方法。是前些日子,閱讀apache和tomcat官方網(wǎng)站的文檔時(shí)發(fā)現(xiàn)。
配置目的:
將apache作為兩個(gè)tomcat server的前端,負(fù)責(zé)轉(zhuǎn)發(fā)client request和server reponse。
apache地址:10.194.0.131
tomcat server地址:10.11.1.29、10.11.1.2
配置步驟如下:
一、下載新版本的Apache 2.0.54和Tomcat Connector 1.2.14.1源代碼,編譯安裝Apache和Connector:
1.在Apache的源代碼目錄中運(yùn)行BuildConf、Configure --prefix=/usr/local/Apache2.0.54、make、make install,將Apache安裝到/usr/local/Apache2.0.54目錄中。
2. 在Connector源代碼目錄的jk/native/運(yùn)行BuildConf、Configure --with-apxs=/usr/local/Apache2.0.54/bin/apxs、make、make install,將mod_jk.so安裝到/usr/local/Apache2.0.54/modules目錄。
二、配置apache:
1.配置workers屬性文件:在apache的conf目錄中建立workers.properties文件,內(nèi)容如下:
ps=/
worker.list=worker1,jvm1
worker.worker1.port=8009
worker.worker1.host=10.11.1.29
worker.worker1.type=ajp13
worker.worker1.socket_keepalive=true
worker.jvm1.port=8009
worker.jvm1.host=10.11.1.2
worker.jvm1.type=ajp13
worker.jvm1.socket_keepalive=true
2.配置httpd.conf:
在LoadModule配置部分加入一下內(nèi)容:
LoadModule jk_module modules/mod_jk.so
# Where to find workers.properties
JkWorkersFile /usr/local/apache2.0.54/conf/workers.properties
# Where to put jk logs
JkLogFile /usr/local/apache2.0.54/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
在VirtualHost配置如下內(nèi)容:
NameVirtualHost *:80
ServerAdmin webmaster@demo
ServerName 10.11.1.29
DirectoryIndex index.jsp index.html
JkMount /* worker1
ServerAdmin webmaster@print
ServerName 10.11.1.2
JkMount /* jvm1
三、配置tomcat:
1.修改10.11.1.29的server.xml文件:
找到…增加jvmRoute屬性:
2.修改10.11.1.2的server.xml文件:
找到…增加jvmRoute屬性:
五、擴(kuò)展功能:
可以配置多個(gè)tomcat作為相同web application的多個(gè)server,并使用apache的負(fù)載均衡特性,已做到相同web application的多個(gè)server之間的負(fù)載均衡,提高web訪問(wèn)效率。本文中例子并沒(méi)有實(shí)現(xiàn)此特性。大家自己按著文檔試試吧。