论坛首页 Java企业应用论坛

apache 集成多个tomcat的方法

浏览 13083 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-09-25  

背景:

   现有服务器只运行了一个网站 没有使用apache, tomcat端口为80 ,现在希望在服务器在添加一个站点 而不使用现有的tomcat.但多个tomcat不能共用一个80端口,所以希望通过apache使用80端口,然后在分发对应的tomcat,实现多个tomcat在一个服务器上共存.

    网上也有很多类似的实例,本文是参考多篇文章然后自己在本机动手测试成功之后写成的,但仍有许多不足,敬请谅解


 环境与软件

     操作系统 xp

     apache 2.2

     tomcat 6.0.32


 Tomcat1的设定

    Shutdown 端口 

      <Server port="8016" shutdown="SHUTDOWN">

    http  端口

      <Connector connectionTimeout="20000" port="9080" protocol="HTTP/1.1" redirectPort="8443"/>

    AJP 端口

       <Connector port="8020" protocol="AJP/1.3" redirectPort="8443"/>

   HOTST 配置

      <Host appBase="webapps" autoDeploy="true" name="www.123.com" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">


 

 Tomcat2的设定

    Shutdown 端口 

      <Server port="8006" shutdown="SHUTDOWN">

    http  端口

      <Connector connectionTimeout="20000" port="9090" protocol="HTTP/1.1" redirectPort="8443"/>

    AJP 端口

       <Connector port="8030" protocol="AJP/1.3" redirectPort="8443"/>

   HOTST 配置

      <Host appBase="webapps" autoDeploy="true" name="www.abc.com" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">




 

Apache设定

   

  httpd.conf

 

 1.  使用apache自带的proxy模块,去掉注释使其可用

    LoadModule proxy_module modules/mod_proxy.so

    LoadModule proxy_ajp_module modules/mod_proxy_ajp.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


 2. 去掉 Include conf/extra/httpd-vhosts.conf的注释


  3.配置httpd-vhosts.conf 内容如下

  NameVirtualHost *:80
  <VirtualHost *:80>
ServerName  www.abc.com
ProxyPass / http://www.abc.com:9090/
ProxyPassReverse / http://www.abc.com:9090/
  </VirtualHost>
  <VirtualHost *:80>
ServerName www.123.com
ProxyPass / http://www.123.com:9080/
ProxyPassReverse / http://www.123.com:9080/
  </VirtualHost>

修改windows host文件
    127.0.0.1       www.abc.com
    127.0.0.1       www.123.com

   启动tomcat ,apache
   输入 www.abc.com www.123.com 终于不用使用端口号,大功告成 哦了!

   本人对apache配置不是很清楚, 也不了解apache proxy的工作原理,在apache和tomcat集成方便如有不足之处 请多多指教,共同进步 , 谢谢!

  

   发表时间:2012-09-25  
如果你的tomcat是在同一台机器上的话,是要对cluster那个地方做详细设置的
0 请登录后投票
   发表时间:2012-09-25  
java_user 写道
如果你的tomcat是在同一台机器上的话,是要对cluster那个地方做详细设置的

在同一台机器上配置tomcat 集群,session 复制一直没有成功过,不知道有什么特殊的设置,请教。
不同机器上session 复制没有问题。
0 请登录后投票
   发表时间:2012-09-26   最后修改:2012-09-26
还是不要研究session复制了,因为这个实在是不能应用到实际项目中,而且本身session复制就不是很科学,
我为什么要在服务器没有出现问题的情况下每次都广播复制session呢? session复制感觉做了很多无用功.

还是多研究下session粘连加通过第三方来备份session以到达tomcat负载均衡,失败转移,从第三方工具中读取出session继续提供服务.
0 请登录后投票
   发表时间:2012-09-27  
LikeEJB_CC 写道
还是不要研究session复制了,因为这个实在是不能应用到实际项目中,而且本身session复制就不是很科学,
我为什么要在服务器没有出现问题的情况下每次都广播复制session呢? session复制感觉做了很多无用功.

还是多研究下session粘连加通过第三方来备份session以到达tomcat负载均衡,失败转移,从第三方工具中读取出session继续提供服务.


有链接提供吗,请教。
0 请登录后投票
   发表时间:2012-09-27  
你是想做均衡负载么?我以前用MOD_JK没有做得。。
0 请登录后投票
   发表时间:2012-09-27  
chenshaoao 写道
LikeEJB_CC 写道
还是不要研究session复制了,因为这个实在是不能应用到实际项目中,而且本身session复制就不是很科学,
我为什么要在服务器没有出现问题的情况下每次都广播复制session呢? session复制感觉做了很多无用功.

还是多研究下session粘连加通过第三方来备份session以到达tomcat负载均衡,失败转移,从第三方工具中读取出session继续提供服务.


有链接提供吗,请教。

google memcache session 同步
0 请登录后投票
   发表时间:2012-09-27  
chenshaoao 写道
java_user 写道
如果你的tomcat是在同一台机器上的话,是要对cluster那个地方做详细设置的

在同一台机器上配置tomcat 集群,session 复制一直没有成功过,不知道有什么特殊的设置,请教。
不同机器上session 复制没有问题。

具体你搜一下,里面有一堆配置,主要是改端口号
0 请登录后投票
   发表时间:2012-09-27  
java_user 写道
chenshaoao 写道
java_user 写道
如果你的tomcat是在同一台机器上的话,是要对cluster那个地方做详细设置的

在同一台机器上配置tomcat 集群,session 复制一直没有成功过,不知道有什么特殊的设置,请教。
不同机器上session 复制没有问题。

具体你搜一下,里面有一堆配置,主要是改端口号

不同电脑上改端口session 复制成功,同一台电脑上不成功,端口都设置成不重复的了。
不知道还有什么特殊的配置。请教。
0 请登录后投票
   发表时间:2012-09-28   最后修改:2012-09-28
chenshaoao 写道
java_user 写道
chenshaoao 写道
java_user 写道
如果你的tomcat是在同一台机器上的话,是要对cluster那个地方做详细设置的

在同一台机器上配置tomcat 集群,session 复制一直没有成功过,不知道有什么特殊的设置,请教。
不同机器上session 复制没有问题。

具体你搜一下,里面有一堆配置,主要是改端口号

不同电脑上改端口session 复制成功,同一台电脑上不成功,端口都设置成不重复的了。
不知道还有什么特殊的配置。请教。


请参考我的另一篇文章 tomcat与apache集成采用mod_jk方式 我在本地测试实现了session共享 非原创 http://litxuf.iteye.com/blog/801950
0 请登录后投票
论坛首页 Java企业应用版

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