JBoss集群覆盖了一些文件夹

时间:2013-09-16 08:16:21

标签: apache jboss jboss7.x mod-cluster

我使用JBoss clustring与Apache mod_cluster集群一起使用。 modcluster配置是基本的:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule slotmem_module modules/mod_slotmem.so
LoadModule manager_module modules/mod_manager.so
LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
LoadModule advertise_module modules/mod_advertise.so

Listen 10.33.144.3:6666
<VirtualHost 10.33.144.3:6666>

  <Directory />
    Order deny,allow
    Deny from all
    Allow from 10.33.144.
  </Directory>

  KeepAliveTimeout 60
  MaxKeepAliveRequests 0

  ManagerBalancerName mycluster
  AdvertiseFrequency 5

</VirtualHost> 

现在我在ServerRoot中有一个文件夹(/ documentation),其中包含我希望通过Apache而不是JBoss提供的html文件。如何将此特定文件夹配置为在mod_cluster转发之外?现在当我尝试访问/ documentation文件夹时,我被定向到一个JBoss节点而不是apache。谢谢!

1 个答案:

答案 0 :(得分:1)

嗯,这很容易: 在mod_cluster启用的VirtualHost:

之外添加此指令
CreateBalancers: 1

查看它的作用:CreateBalancers docs。 此外,在conf.d /中创建一个proxypass.conf,例如,这个内容:

ProxyPassMatch ^/documentation/ !
ProxyPass / balancer://mycluster stickysession=JSESSIONID|jsessionid nofailover=on
ProxyPassReverse / balancer://mycluster
ProxyPreserveHost on

如果您遇到任何Cookie问题,请尝试使用:ProxyPassReverseCookie *指令。

前面提到的片段只是说:如果是/ documentation /,请不要将其转发给工作人员并在本地服务。

Lat但并非最不重要的是,您的EnableMCPMReceive指令在哪里?它是什么版本的mod_cluster?我强烈建议不要使用超过1.2.0的任何东西,我建议使用最新的1.2.6版本。缺少EnableMCPMReceive意味着一个非常古老的mod_cluster没有关键的安全修复......

HTH

Karm