apache代理与反代理,负载均衡简单实例

来源:互联网 发布:淘宝买抱枕 编辑:程序博客网 时间:2024/06/03 15:56

1、所需环境为

     apache    http://httpd.apache.org/

     tomcate   http://tomcat.apache.org/

     nodejs     http://nodejs.org/


    环境的搭建就不再具体说明了



2、apache的代理通过自身的proxy_mode进行 在http.conf文件最后加上如下:

 #采用其自带的进行处理
 LoadModule proxy_module modules/mod_proxy.so
 LoadModule proxy_ajp_module modules/mod_proxy_ajp.so



#将/下的所有内容代理到8009的tomcat下
#转发的处理

#ProxyPass /x/! ajp://127.0.0.1:8009/
#ProxyPass /t1/ ajp://127.0.0.1:8009/


#为什么要加反向代理,浏览器不能认识问题,重定向时
#ProxyPassReverse /t1/ ajp://127.0.0.1:8009/



3、负载均衡

在http.conf文件最后加上如下:

 LoadModule proxy_module modules/mod_proxy.so  
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so  
LoadModule proxy_http_module modules/mod_proxy_http.so  
  
ProxyRequests Off  
<Proxy balancer://clusterphpinfo>  

#这个是tomcate服务器  loadfactor表示命中的概率,越大越好
BalancerMember http://127.0.0.1:8080  loadfactor=5  

#这个是nodejs服务器
BalancerMember http://127.0.0.1:8899  loadfactor=1
</Proxy>  
ProxyPass /test balancer://clusterphpinfo stickysession=STICK_PORT_TOKEN nofailover=On  
ProxyPassReverse /test balancer://clusterphpinfo  
  
<Location /balancer-manager>  
SetHandler balancer-manager  
Order Deny,Allow  
Allow from all  
#Allow from 192.168.18.*  
</Location>  

运行结果