4,我尝试在apache Web服务器中配置负载均衡器但未成功。
在我的httpd.conf中
LoadModule proxy_module modules/mod_proxy.so
<VirtualHost mysuperwebapp.com:80>
ServerName mysuperwebapp.com
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
Deny from all
Allow from .mysuperwebapp.com
</Location>
<Proxy balancer://mycluster>
BalancerMember http://localhost:9999
BalancerMember http://localhost:9998 status=+H
</Proxy>
<Proxy *>
Order Allow,Deny
Allow From All
</Proxy>
ProxyPreserveHost On
ProxyPass /balancer-manager !
ProxyPass / balancer://mycluster/
ProxyPassReverse / http://localhost:9999/
ProxyPassReverse / http://localhost:9998/
</VirtualHost>
当我启动apache服务时,它说
AH00526: Syntax error on line 184 of /Users/aptos/Documents/workspace/Webserver/conf/httpd.conf:
BalancerMember Can't find 'byrequests' lb method
有人能告诉我我做错了吗? 非常感谢你。
答案 0 :(得分:34)
就我而言,我使用ProxyPass Can't find 'byrequests' lb method
模块
proxy_balancer_module
错误是由于我错过了取消注释httpd.conf
中所需的模块 LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
和
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
在httpd.conf文件中取消注释默认注释的上述模块条目解决了我的问题。
(使用Apache 2.4.3)
答案 1 :(得分:8)
您需要加载mod_proxy_balancer。在支持它的发行版上,最好的方法是使用a2enmod:
sudo a2enmod proxy_balancer
它为你完成所有工作。
答案 2 :(得分:4)
在Apache 2.2上,您将需要这些库:
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
答案 3 :(得分:1)
您需要在/etc/httpd/conf/httpd.conf
文件中启用以下模块。
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
答案 4 :(得分:0)
答案是包括
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
或IBM WebSPhere
LoadModule proxy_balancer_module modules/WebSphereCE/mod_proxy_balancer.so