一.环境配置
serve1:172.25.77.1
serve2:172.25.77.2
serve3:172.25.77.3
sever1作为haproxy调度机,在server1上进行如下操作
yum install openssl-devel pcre-devel gcc-c++ rpm-build -y
rpmbuild -tb haproxy-1.6.11.tar.gz
rar zxf haproxy-1.6.11.tar.gz
cd rpmbuild/RPMS/x86_64
ls ##可以看到haproxy的rpm安装包
rpm -qpl haproxy-1.6.11-1.x86_64.rpm
rpm -ivh haproxy-1.6.11-1.x86_64.rpm
cd haproxy-1.6.11/examples/
cp content-sw-sample.cfg /etc/haproxy/haproxy.cfg
groupadd -g 200 haproxy ##为haproxy添加组用户
useradd -u 200 -g 200 haproxy ##为haproxy添加用户
vim /etc/security/limits.conf
cd /etc/haproxy/
vim haproxy.cfg
/etc/init.d/haproxy start
netstat -antlp ###查看haproxy的端口是否打开
在sever2,server3上分别安装httpd服务,并且分别在默认发布页index.html上写上server2,serer3。在真机上测试,实现了轮询
根据日志可以查看其stats状态页,如下图
这里查看其stats状态页,可以定义用户和密码
vim /etc/haproxy/haproxy.cfg
/etc/init.d/haproxy restart
二、创建指定日志文件
vim /etc/rsyslog.conf
进行如下修改
/etc/init.d/rsyslog restart
cd /var/log
ll haproxy.log
三、acl列表
vim /etc/haproxy/haproxy.cfg
禁止250主机访问
错误重定向,将403报错给客户没实际作用,这里更改配置文件将错误重定向到本机的apache服务默认发布目录里的写入内容,记得将httpd的端口改为8080避免和haproxy服务冲突;如下图
/etc/init.d/haproxy reload
指定ip重定向,更改配置文件,如图,禁止server4的访问
/etc/init.d/haproxy reload
四、动静分离
server3安装php 编辑动态页面 完成后restart httpd服务
修改 server1上 haproxy 的配置文件,如果访问以.php结尾的动态界面,实际访问的主机为server3;静态页面访问server2
结果如下