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. UML类图实例分析

    登录模块 某基于C/S的即时聊天系统登录模块功能描述如下: 用户通过登录界面(LoginForm)输入账号和密码,系统将输入的账号和密码与存储在数据库(User)表中的用户信息进行比较,验证用户输入是 ...

  2. 今天折腾phantomjs+selenium的笔记

    1.debian8里安装phantomjs的方法: 参照:http://www.cnblogs.com/lgh344902118/p/6369054.html a.去https://bitbucket ...

  3. svn的上传冲突问题

    上传报错实际是 1 . 之前上传的代码与现代码不一样 2. 上传的代码中有错误 需要先拉下来,对比删除不要的,再上传 eclipse加入svn :  1.import  ---从svn检出项目---创 ...

  4. VC++ MFC如何生成一个可串行化的类

    一.MFC允许对象在程序运行的整个过程中持久化的串行化机制(1)串行化是指向持久化存储媒介(如一个磁盘文件)读或写对象的过程.(2)串行化用于在程序运行过程时或之后修复结构化数据(如C++类或结构)的 ...

  5. spring boot 项目配置字符编码

  6. NYOJ44-子串和-(dp||思维)

    题目描述: 给定一整型数列{a1,a2...,an},找出连续非空子串{ax,ax+1,...,ay},使得该子序列的和最大,其中,1<=x<=y<=n. 输入描述: 第一行是一个整 ...

  7. platform_device module

    参考: http://www.wowotech.net/linux_kenrel/platform_device.html 1. platform_device 需要在注册 platform_driv ...

  8. 函数putText()在图片上写文字

    #include <iostream> #include <opencv2/opencv.hpp> using namespace std; using namespace c ...

  9. iostat磁盘监控工具

    安装iostat磁盘监控工具 1.安装 yum install sysstat 2.运行 iostat -k -d -x 1 10 -k:以kb为单位统计 -d:显示磁盘状态 -x:显示详细信息 1: ...

  10. centos6安装nginx

    1.获取官方的仓库地址 我们需要先访问nginx的官方网站,获取官方的仓库地址https://nginx.org/en/linux_packages.html#stable 新建/etc/yum.re ...