Apache反向代理配置

Apache反向代理配置,可以实现同台或者多台服务器间的多http服务的统一代理。


1、系统环境

CentOS6.x

需要安装httpd服务,检查是否安装

service httpd status

安装方法,yum直接安装

yum install httpd -y


2、准备三台服务器的多个tomcat的http服务

spark1 : 8080 8088

spark2 : 8080

spark3 : 8080

apache可以代理本机或者多台服务器间同一端口或者不同端口的http服务


3、修改配置文件

vim /etc/httpd/conf/httpd.conf

<VirtualHost *:80>
ServerAdmin ganymede.wuke@foxmail.com
ServerName www.ganymede.com
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /test1 http://spark1:8080/test1
ProxyPassReverse /test1 http://spark1:8080/test1
ProxyPass /test1_2 http://spark1:8088/test1_2
ProxyPassReverse /test1_2 http://spark1:8088/test1_2
ProxyPass /test2 http://spark2:8080/test2
ProxyPassReverse /test2 http://spark2:8080/test2
ProxyPass /test3 http://spark3:8080/test3
ProxyPassReverse /test3 http://spark3:8080/test3
</VirtualHost>

配置截图如下:


重启apache服务,需要注意的是ProxyPass 与 ProxyPassReverse 需配置在一样的路径,且代理的路径与服务名一致。

service httpd restart



4、关于ProxyPass 与 ProxyPassReverse 

ProxyPass 就是把所有来自客户端对http://spark1:8080/test1的请求转发给/test1上进行处理,
ProxyPassReverse 的配置总是和ProxyPass 一致,如果响应中有302重定向,ProxyPassReverse就派上用场。举例说明,假设处理的结果是实现redirect到login.jsp,如果没有配置反向代理,址只是代理服务器能访问到的,可想而知,客户端肯定是打不开的。反之如果配置了反向代理,则会在转交HTTP重定向应答到客户端之前调整它为http://spark1:8080/test1/login.jsp,即是在原请求之后追加上了redirect的路径。
客户端到服务器称之为正向代理,那服务器到客户端就叫反向代理。



5、测试代理服务

http://spark1/test1 代理 http://spark1:8080/test1/ 

http://spark1/test1_2 代理 http://spark1:8088/test1_2

http://spark1/test2 代理 http://spark2:8080/test2

http://spark1/test3 代理 http://spark3:8080/test3


说明:

apache中的mod_proxy模块主要作用就是进行url的转发,即具有代理的功能。应用此功能,可以很方便的实现同tomcat等应用服务器的整合,甚者可以很方便的实现web集群的功能。



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值