论坛首页 Java企业应用论坛

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

浏览 7112 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-03-07   最后修改:2010-07-13

最近完成了一个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

    DirectoryIndex  index.html  index.html.var  index.jsp
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot D:\www\tomcat52\webapps\ROOT
    ServerName test2.com

    ServerAlias  www.test2.com
    DirectoryIndex  index.html  index.html.var  index.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.so
JkWorkersFile conf/workers.properties
JkLogFile      logs/mod_jk.log
JkLogLevel     info
JkRequestLogFormat     "%w %V %T %U %q"

  

conf/workersproperties文件配置:

 

conf/workerspropertiesworker.list=host2,host1

worker.host1.port=8009
worker.host1.host=host1.com
worker.host1.type=ajp13
worker.host1.lbfactor=1
worker.host1.recycle_timeout 120

worker.host2.port=8010
worker.host2.host=host2.com
worker.host2.type=ajp13
worker.host2.lbfactor=1
worker.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.so
LoadModule proxy_module modules/mod_proxy.so 

  

将以上两项配置前的注释去掉。

 

在conf/extra/httpd-vhosts.conf文件中进行虚拟主机配置,iis邮件服务使用90端口

 

<VirtualHost *:80>
    ProxyPreserveHost On
    DocumentRoot C:\mail\Web
    Alias /WinWebMail  C:\mail\Web
    ServerName www.mailtest.com
    DirectoryIndex  default.asp index.html  index.html
    ProxyPass / http://127.0.0.1:90/
    ProxyPassReverse / http://127.0.0.1:90/
</VirtualHost>

  

      iis邮件服务器也配置完毕,测试通过。

 

 

      初学者比较适合看的: www.java-talk.net

 

 

 

 

 

 

 

 

论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics