liuwei1981 发表于 2013-1-15 22:57:38

apache2.2+tomcat5.5+IIS6虚拟主机多实例配置

最近完成了一个apache整合tomcat和iis实现虚拟主主机多实例的配置,现在整理一下。
需求说明:公司有一个web服务器,共部署了两个web应用(拥有独立的域名),使用了一个端口为80的tomcat5.0,配置了多host方式实现了两个web应用同时运行,但因为业务上的原因,需要将两个web应用分别部署到两个tomcat中。同时也向在服务器上部署一个邮件服务器专门用作企业邮箱,就想到了用apache来实现这个需求。
经过了今天是资料收集,部署和测试,现在已经在测试服务器上部署通过,下面是整理的步骤:
1.基本配置:apache2.2,tomcat5.5,iis6,使用了一个受限制的邮件服务器(测试用)。
2.apache的安装测试  安装apache服务器,使用默认推荐配置参数,使用80端口,启动测试通过(http://127.0.0.1,页面显示It Works,安装成功);
3.安装tomcat5.5服务器共安装两个tomcat服务器,并修改服务端口号(server.xml文件),将配置的tomcat服务器启动,测试是否能够同时正常运行。
4.apache中的tomcat虚拟主机配置4.1apache2.2版本除了增加虚拟主机配置信息外,还需要修改默认目录安全配置,否则无法访问服务:
<Directory />   Options FollowSymLinks   AllowOverride None   Order deny,allow   Deny from all   Satisfy all</Directory>  
修改为:
 
<Directory />   Options FollowSymLinks   AllowOverride None</Directory>  
其实就是将后三项配置去掉。
 
4.2 打开conf/httpd.conf文件,将Include conf/extra/httpd-vhosts.conf前注释去掉。
4.3 在conf/extra/httpd-vhosts.conf文件中进行虚拟主机配置
 
<VirtualHost *:80>    DocumentRoot D:\www\tomcat51\webapps\ROOT    ServerName test1.com    ServerAlias www.test1.com    DirectoryIndexindex.htmlindex.html.varindex.jsp</VirtualHost><VirtualHost *:80>    DocumentRoot D:\www\tomcat52\webapps\ROOT    ServerName test2.com    ServerAliaswww.test2.com    DirectoryIndexindex.htmlindex.html.varindex.jsp</VirtualHost>   
此时,在www目录下,假若有html文件,应该就已经可以根据不同的虚拟主机访问不同的html文件了.
 
4.4 apache服务器整合tomcat服务器
jk connector 配置jk是tomcat和apache之间的连接器,apache和tomcat通过jk来进行通讯,jk支持多个不同的instance转发。jk的调度是根据workers.properties来的。
在自己的engine 中配置jvmRoute值,和workers.properties对应;
 
在httpd.conf中
 
load module:LoadModule jk_module modules/mod_jk-apache.soJkWorkersFile conf/workers.propertiesJkLogFile      logs/mod_jk.logJkLogLevel   infoJkRequestLogFormat   "%w %V %T %U %q"  
conf/workersproperties文件配置:
 
conf/workerspropertiesworker.list=host2,host1worker.host1.port=8009worker.host1.host=host1.comworker.host1.type=ajp13worker.host1.lbfactor=1worker.host1.recycle_timeout 120worker.host2.port=8010worker.host2.host=host2.comworker.host2.type=ajp13worker.host2.lbfactor=1worker.host2.recycle_timeout 120   
然后,在每个virtualhost配置里面增加:
 
<VirtualHost *:80>   ServerName www.test2.com   ....   JkMount/* host1</VirtualHost>  
这是配置tomcat需要拦截的文件。默认全部都由tomcat拦截处理至此,apache整合tomcat基本完毕,其中一个web应用需要配置tomcat数据源,配置只需在tomcat中的server.xml文件的
<host></host> 中间增加:
<Context path="" docBase="${catalina.home}/webapps/creditworld" reloadable="true" debug="0"> <Resource name="jdbc/SQLWEBDB" auth="Container"   type="javax.sql.DataSource"driverClassName="net.sourceforge.jtds.jdbc.Driver"      url="jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=webdbcredit" username="sa"      password="sa" maxActive="150" maxIdle="500" maxWait="-1" removeAbandoned="true" removeAbandonedTimeout="60"   logAbandoned="true"/></Context> 
5.apache中的iis虚拟主机配置 安装iis和邮件服务器,并安装邮件服务器说明,将邮件服务器配置到iis中。
 
conf/httpd.conf配置修改
LoadModule proxy_http_module modules/mod_proxy_http.soLoadModule proxy_module modules/mod_proxy.so   
将以上两项配置前的注释去掉。
 
在conf/extra/httpd-vhosts.conf文件中进行虚拟主机配置,iis邮件服务使用90端口
 
<VirtualHost *:80>    ProxyPreserveHost On    DocumentRoot C:\mail\Web    Alias /WinWebMailC:\mail\Web    ServerName www.mailtest.com    DirectoryIndexdefault.asp index.htmlindex.html    ProxyPass / http://127.0.0.1:90/    ProxyPassReverse / http://127.0.0.1:90/</VirtualHost>  
      iis邮件服务器也配置完毕,测试通过。 
 
 
 
 
 
 
 
页: [1]
查看完整版本: apache2.2+tomcat5.5+IIS6虚拟主机多实例配置