环境:Apache2.4 (192.168.1.15:1102)安装路径: E:\Platform\Apache24
节点1 Tomcat6 (192.168.1.15:8080 ajp:8010)
节点2 Tomcat6 (192.168.1.15:8081 ajp:8011)
安装Apache服务,安装成Windows服务。
CMD命令行方法:
"E:\Platform\Apache24\bin\httpd.exe" -k install -n apache
后面的 apache 是安装后Windows系统的服务名称,可以随便改。
1、导入需要的OS文件:
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule proxy_ftp_module modules/mod_proxy_ftp.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule slotmem_shm_module modules/mod_slotmem_shm.so LoadModule speling_module modules/mod_speling.so LoadModule ssl_module modules/mod_ssl.so LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so LoadModule jk_module modules/mod_jk.so
2、apache端口及其它信息:
更改 Apache24\conf\httpd.conf 文件:
Listen 1102
ServerRoot "E:/Platform/Apache24"
ServerName 192.168.1.15:1102
ScriptAlias /cgi-bin/ "E:/Platform/Apache24/cgi-bin/"
<Directory "E:/Platform/Apache24/cgi-bin"> AllowOverride None Options None Require all granted </Directory>
关键的,要把虚拟主机的配置导入文件要放开:
Include conf/extra/httpd-vhosts.conf
最后面,添加:
ProxyRequests Off <proxy balancer://cluster> BalancerMember ajp://192.168.1.15:8011 loadfactor=1 route=jvm1 BalancerMember ajp://192.168.1.15:8010 loadfactor=1 route=jvm2 </proxy>
至此,httpd.conf 配置就算完成。
配置关键点:
1、Tomcat的端口号:
<proxy balancer://cluster> BalancerMemberajp://192.168.1.15:8011 loadfactor=1 route=jvm1 BalancerMemberajp://192.168.1.15:8010 loadfactor=1 route=jvm2 </proxy>
这两个中的端口号,一定是AJP的端口,不是HTTP的端口,一定要注意!
3、虚拟主机的配置
虚拟主机的配置文件,就是上面放开的配置文件。 Apache24\conf\extra\httpd-vhosts.conf
<VirtualHost 192.168.1.15:1102> ServerAdmin 111@163.com ServerName localhost ServerAlias localhost ProxyPass / balancer://cluster/ stickysession=jsessionid nofailover=On ProxyPassReverse / balancer://cluster/ ErrorLog "logs/localhost.log" CustomLog "logs/localhost_access.log" common </VirtualHost>
上面的说明,网上有很多,可经找找。ServerName,配置成Localhost,有的说需要在系统的Hosts文件中登记一下,我没有登记,也是可以使用的,原因是我没有使用域名的方式。如果是采用域名的方式,那就需要在Hosts文件中做一下转换。
4、Tomcat节点配置。
这个很简单,如果本地,保证每个端口号不重复。如果是不同的机器,就可以相同。
因为我们采用AJP方式,所以AJP的端口号相当重要。Apache转发时,就是通过这个端口转发的。
Tomcat配置,第一,是Http,AJP端口的配置,全部在server.xml中配置。
另外,需要
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
在这个后面加上的httpd.conf 中配置的节点名 jvm1。
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> 这个也要放开,是用于Session复制的。
最后,在应用web.xml中,需要增加一个集群的配置。
最后加上:
<distributable/>
这个要加到</web-app>前面哟。
到此,两个节点的集群就配置完成了。