apache安装目录在/data/apache24,这里就不介绍apache的安装了。

一、反向代理配置

在/data/apache24/conf/extra下创建htttpd-proxy.conf文件

#开启反代理的必须模块
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so #关闭正向代理
ProxyRequests Off
#设置集群组,mycluster名称可以随意取
<Proxy "balancer://mycluster">
BalancerMember http://192.168.1.222:8080
BalancerMember http://192.168.1.233:8080
</Proxy>
#使用集群组,mycluster名称需与上面配置相同
ProxyPass "/demo" "balancer://mycluster/"
ProxyPassReverse "/demo" "balancer://mycluster/"

修改/data/apache24/conf/httpd.conf中添加

Include conf/extra/htttpd-proxy.conf

这样重启apache后,当我们访问网站/demo时,会反向代理到222和233上的8080端口。

二、apache负载均衡管理界面

<Location "/balancer-manager">
SetHandler balancer-manager
order Deny,Allow
Deny from all
Allow from localhost
</Location>

访问网站/balancer-manager时,就可以看到apache自带的一个负载均衡管理界面。

三、虚拟主机上配置反向代理

<VirtualHost *:80>
DocumentRoot "/data/wwwroot/test"
ServerName www.test.com
ErrorLog "logs/www.test.com-error_log"
CustomLog "logs/www.test.com-access_log" common
#当我们访问www.test.com时,都会代理到mycluster集群中。
ProxyPass "/" "balancer://mycluster/"
ProxyPassReverse "/" "balancer://mycluster/"
</VirtualHost>

四、负载比例分配

loadfactor取值范围为1-100

ProxyRequests Off
<Proxy "balancer://mycluster">
BalancerMember http://192.168.1.222:8080 loadfactor=6
BalancerMember http://192.168.1.233:8080 loadfactor=4
BalancerMember http://192.168.1.244:8080 loadfactor=2
</Proxy>
ProxyPass "/" "balancer://mycluster/"
ProxyPassReverse "/" "balancer://mycluster/"

  

五、负载分配算法

lbmethod取值有:
lbmethod=byrequests 按照请求次数均衡(默认)
lbmethod=bytraffic 按照流量均衡
lbmethod=bybusyness 按照繁忙程度均衡(总是分配给活跃请求数最少的服务器)

ProxyRequests Off
<Proxy "balancer://mycluster">
BalancerMember http://192.168.1.222:8080 loadfactor=6
BalancerMember http://192.168.1.233:8080 loadfactor=4
BalancerMember http://192.168.1.244:8080 loadfactor=2
</Proxy>
ProxyPass "/" "balancer://mycluster/"
ProxyPassReverse "/" "balancer://mycluster/"
ProxySet lbmethod=bytraffic

五、热备份

请求总是流向222,一旦222挂掉, apache会检测到错误并把请求分流给233。apache会每隔几分钟检测一下222的状况,如果222恢复,就继续使用222。

ProxyRequests Off
<Proxy balancer://mycluster>
BalancerMember http://192.168.1.222:8080
BalancerMember http://192.168.1.233:8080 status=+H
</Proxy>
ProxyPass "/" "balancer://mycluster/"
ProxyPassReverse "/" "balancer://mycluster/"

centos7下apache2.4反向代理的更多相关文章

  1. CentOS7下Nginx搭建反向代理,并使用redis保存session

    1.启动两个tomcat,端口分别为8080,8081 2.配置nginx,vim /usr/local/nginx/conf/nginx.conf 添加如下配置: 3.启动nginx或热加载 启动: ...

  2. 七、CentOS 6.5 下 Nginx的反向代理和负载均衡的实现

    CentOS 6.5 下 Nginx的反向代理和负载均衡的实现 * 修复上面文章的问题: 复制出一个tomcat2之后,修改service.xml文件时,要修改三个端口: 1. <!-- 800 ...

  3. 利用DockerHub在Centos7.7环境下部署Nginx反向代理Gunicorn+Flask独立架构

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_165 上一篇文章:Docker在手,天下我有,在Win10系统下利用Docker部署Gunicorn+Flask打造独立镜像,是在 ...

  4. Apache2.4反向代理设置

    一.配置方向代理 1,放开虚拟主机(反向代理)模块,在httpd.conf中把下三行配置放开: LoadModule proxy_module modules/mod_proxy.so LoadMod ...

  5. Centos7 Nginx 443端口反向代理springboot项目

    开发微信小程序需要部署项目到服务器.要求必须是443端口.但是一个443端口只能监听一个服务器.所以就出现了一个问题就是每次开发一个小程序就需要买一个服务器.觉得特别多余.后来查到了有一种方式就是通过 ...

  6. centos7 nginx搭建及其反向代理

    摘要:nginx反向代理的原理:外部通过ip加端口访问nginx,nginx接收到外部请求,通过ip解析访问内部服务器,内部服务器再将数据传回Nginx服务器,而Nginx再把数据传回给外部客户机. ...

  7. [nginx]Windows和Mac下,nginx反向代理服务器配置

    最近做项目,前端需要用到nginx反向代理来转发请求,总结了一下在Windows和Mac上的配置,以备查询. 一.Windows 修改nginx的配置文件,nginx.conf. 1)nginx.co ...

  8. linux下nginx【反向代理】配置【负载均衡】配置

    nginx 可以配置多个端口: 1.10088端口 配置反向代理,消除跨域问题. 2.10087端口 配置ip_hash模式的负载均衡,ip_hash可以绕开解决session共享的问题. nginx ...

  9. linux下配置nginx反向代理例子

    官方说明: 例子: 虚拟机ip:192.168.85.3,物理机VMware Network Adapter VMnet8  ip:192.168.85.1 1,准备tomcat 准备一tomcat, ...

随机推荐

  1. html页面跳转

    button <button onclick="window.location.href='edit.jsp'">完善个人信息</button> 单击提交表 ...

  2. Java IO流学习总结五:转换流-InputStreamReader、OutputStreamWriter

    类的继承关系 Reader |__ BufferedReader.StringReader.InputStreamReader |__ FileReader Writer |__ BufferedWr ...

  3. linux 文件系统之superblock

    为了实际测试这个pagecache和对裸盘操作的区别,我一不小心敲错命令,将一个磁盘的super_block给抹掉了,全是0, dd if =/dev/zero of=/dev/sda2 bs=409 ...

  4. ReactiveX 学习笔记(8)错误处理和 To 操作符

    Error Handling Operators Operators to Convert Observables 本文的主题为对 Observable 进行错误处理的操作符以及转换 Observab ...

  5. Incompatible shapes during the half way training---Invalid argument: Incompatible shapes: [1,63,4] vs. [1,64,4]

    这是tensorflow model 中我使用它的faster--cnn,但是就是训练过程中,代码执行到一半 一般是step=40~120的时候就报错了: INFO:tensorflow:global ...

  6. Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag.

    https://blog.csdn.net/watermusicyes/article/details/44963773 Context中有一个startActivity方法,Activity继承自C ...

  7. centos7 关闭 防火墙

    CentOS 7 默认使用的是firewall作为防火墙 关闭firewall: systemctl stop firewalld.service  #停止firewall systemctl dis ...

  8. Functional and Class Components

    [Functional and Class Components] The simplest way to define a component is to write a JavaScript fu ...

  9. android TextView SetText卡顿原因

    [android TextView SetText卡顿原因] 不要用wrap_content即可. 参考:http://blog.csdn.net/self_study/article/details ...

  10. CRTD异常案例及原因

     错误案例: SELECT DEMANDLINEID,SUPPLYORDERID,DEMANDORDERID,QTYALLOCATED,ITEM, A.* FROM ABPPMGR.SUPPLYDMD ...