Então eu encontrei o problema .. Foi um erro de digitação simples, faltando a forma plural "s" ..
Carregou o módulo usando --enable-lbmethod-byrequests
e funcionou
Estou tentando construir meu servidor Apache com módulos estáticos. Mas tenha alguns problemas com o módulo proxy_balancer. Eu recebo um erro:
[ssl:info] [pid 11863] AH01876: mod_ssl/2.4.10 compiled against Server: Apache/2.4.10, Library: OpenSSL/1.0.1i
[proxy:crit] [pid 11868] AH02432: Cannot find LB Method: byrequests
[proxy_balancer:emerg] [pid 11868] (22)Invalid argument: AH01183: Cannot share balancer
[:emerg] [pid 11868] AH00020: Configuration Failed, exiting
Quando eu olho para os módulos carregados usando bin/apachectl -M
não há módulo mod_lbmethod lá.
Eu tentei carregar o módulo adicionando essas linhas ao script de configuração --enable-lbmethod-byrequest
e --with-lbmethod=byrequest
, mas ele não aparece na lista de módulos nem na pasta incluída.
Alguém experimentou esse problema antes e conseguiu uma solução para ele?
Se você estiver usando o Apache 2.4 ou acima, precisa ativar o mod_lbmethod_byrequests também. Mas abaixo de 2.4 mod_proxy_balancer foi o suficiente. Eu também tive esse problema. O problema é mod_lbmethod_byrequests separado de mod_proxy_balancer em 2.3 .
Isso pode ser resolvido ativando o módulo mod_lbmethod_byrequests
, assim:
$ sudo a2enmod lbmethod_byrequests
Isso não era necessário no Apache 2.2.22, mas é requerido pelo Apache 2.4
Tem certeza de que este é um problema que você deve se preocupar em resolver? Por que você está seguindo esse caminho?
O Apache é um ótimo servidor web, e há um lugar para o mod_proxy no proxy de algumas URLs em ambientes simples de servidor único, onde não há cache de front-end e camadas de balanceamento de carga. Se você quiser balanceamento de carga, é quase melhor colocá-lo em uma camada na frente do Apache em vez de usar um módulo do Apache. Por exemplo, use verniz ou lula.
Se você continuar, precisará fornecer mais informações sobre exatamente o que está fazendo em sua compilação e configuração, e onde e quando o erro será exibido.
Eu presumo que você tenha a diretiva LoadModule apropriada na configuração do seu apache?
No httpd.conf você verá as seguintes linhas:
#LoadModule lbmethod_bybusyness_module "${PRODUCT_HOME}/modules/mod_lbmethod_bybusyness.so"
#LoadModule lbmethod_byrequests_module "${PRODUCT_HOME}/modules/mod_lbmethod_byrequests.so"
#LoadModule lbmethod_bytraffic_module "${PRODUCT_HOME}/modules/mod_lbmethod_bytraffic.so"
Descomente a linha dependendo do algoritmo de balanceamento de carga que você vai usar. No seu caso, não comentar a seguinte linha:
#LoadModule lbmethod_byrequests_module "${PRODUCT_HOME}/modules/mod_lbmethod_byrequests.so"
depois de descomentar:
LoadModule lbmethod_byrequests_module "${PRODUCT_HOME}/modules/mod_lbmethod_byrequests.so"
Isso deve funcionar bem.
Tags apache-2.2 apache-2.4