Ubuntu下Apache反向代理设置

Apache可通过mod_proxy*.so系列模块很好的实现正向、反向代理功能,亦可通过反向代理实现负载均衡,本文将讲述基于Apache反向代理实现负载均衡的配置方法。

 

1、环境配置说明:

代理服务器域名:ap.proxy

web server 1 ip:192.168.195.18 port:80

web server 2 ip:192.168.195.19 port:80

backup server ip:192.168.195.20 port:80

 

2、确认开启模块:mod_proxy, mod_proxy_balancer, mod_proxy_http

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

 (可通过指令开启:a2enmod proxy proxy_http proxy_balancer)

3、简单反向代理设置:
<VirtualHost *:80>
    ServerAdmin admin@admin.com
    ServerName ap.proxy
    ProxyRequests Off
    ProxyMaxForwards 100
    ProxyPreserveHost On
    ProxyPass / http://192.168.195.18/
    ProxyPassReverse / http://192.168.195.18/
   
    <Proxy *>
        Order Deny,Allow
        Allow from all
    </Proxy>
</VirtualHost>

 

4、反向代理实现负载均衡:
<VirtualHost *:80>
    ServerAdmin admin@admin.com
    ServerName ap.proxy
    ProxyRequests Off    #开启反向代理
    Proxypass / balancer://proxy/
    <Proxy balancer://proxy>
        Order Deny,Allow
        Allow from all
        BalancerMember http://192.168.195.18 loadfactor=3    #web server 1, loadfactor--负载比例分配
        BalancerMember http://192.168.195.19 loadfactor=1    #web server 2,  loadfactor--负载比例分配
        BalancerMember http://192.168.195.20 status=+H       #backup server
       
        #负载分配算法
        #lbmethod=byrequests 按照请求次数均衡(默认)
        #lbmethod=bytraffic 按照流量均衡
        #lbmethod=bybusyness 按照繁忙程度均衡(总是分配给活跃请求数最少的服务器)
        ProxySet lbmethod=bytraffic   
    </Proxy>
</VirtualHost>

更多设置项:请参考apache手册……

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=另一篇文章-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

环境是Ubuntu 9.04, 首先当然是安装Apache2。

 

1. 进入mod_availables下拷贝proxy.conf, proxy.load, proxy_http.load到mod_enables下

2. 配置:

         编辑proxy.conf:

                ProxyRequests Off

          <Proxy *>
            Order deny,allow
            Allow from all
         
</Proxy>

          ProxyPass /foo http://foo.example.com/bar
          ProxyPassReverse /foo http://foo.example.com/bar

只需要对应的修改上述的url即可。如果需要使用二级代理则使用ProxyRemote命令。具体的说明可以参见:

http://man.chinaunix.net/newsoft/Apache2.2_chinese_manual/mod/mod_proxy.html


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值