解决BalancerMember Cant find byrequests lb method

七月 02, 2019 | views
Comments 0

今天在公司的另外一台服务器上配置apache整合tomcat,由于apache是编译安装的,很多模块都没有打开,在整合的时候,报下面的错误。

下面我们来解决这个错误,解决方法如下:

1.先确认httpd.conf里有没有proxy的模块,如果没有那就要自己编译添加,进入apache源代码目录下modules目录中的proxy目录里:


  1. cd /root/install/httpd-2.2.22/modules/proxy/ 

这是我的目录,你们根据自己放的源代码目录去整,进入到proxy目录里了执行下面两个命令:



  1. /usr/local/apache/bin/apxs -c -i -a mod_proxy_ajp.c ajp*.c mod_proxy_balancer.c mod_proxy_connect.c  mod_proxy.c mod_proxy_http.c proxy_util.c 
  2. /usr/local/apache/bin/apxs -c -i -a mod_proxy_connect.lo mod_proxy_balancer.lo mod_proxy_ajp.lo mod_proxy.lo proxy_util.lo 

说明:

-c 执行编译操作

-i 安装操作,安装一个或多个动态共享对象到服务器的modules目录

-a 自动增加一个LoadModule行道httpd.conf文件,以激活此模块,若此行存在则启用之

-A 与-a类似,但是它增加的LoadModule行钱有井号前缀(#)

-e 需要执行编辑操作,可与-a和-A选项配合使用,与-i操作类似,修改httpd.conf文件,但并不安装此模块

2.然后重启apache

如果没有报错,那就说明上面的错误已经解决,如果还是继续报:



  1. AH00526: Syntax error on line 574 of /usr/local/apache/conf/httpd.conf: 
  2. BalancerMember Can t find byrequests lb method 

那你就要保证httpd.conf里有下面2个选项:



  1. LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so 
  2. LoadModule slotmem_shm_module modules/mod_slotmem_shm.so 

然后再重启下apache就可以了.





zend