解决BalancerMember Can't find 'byrequests' lb method

作者:袖梨 2022-06-25

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

下面我们来解决这个错误,解决方法如下:
1.先确认httpd.conf里有没有proxy的模块,如果没有那就要自己编译添加
进入apache源代码目录下modules目录中的proxy目录里

 代码如下 复制代码
cd /root/install/httpd-2.2.22/modules/proxy/

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

 代码如下 复制代码

/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
/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
如果没有报错,那就说明上面的错误已经解决,如果还是继续报:

 代码如下 复制代码
AH00526: Syntax error on line 574 of /usr/local/apache/conf/httpd.conf:
BalancerMember Can't find 'byrequests' lb method

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

 代码如下 复制代码
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so

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

相关文章

精彩推荐