博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转】Apache配置中ProxyPassReverse指令的含义
阅读量:6940 次
发布时间:2019-06-27

本文共 997 字,大约阅读时间需要 3 分钟。

此文章来源:http://blog.csdn.net/yl_wh/article/details/8697501

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

例如使用apache作为域名www.test.com代理服务器,让其暴露在公网上,即DNS解析到本机器上,真正提供web服务器的是另一台位于同一内网的机器上,假设起IP是192.168.100.22,那么只需要如下配置就可以了。

ProxyPass / http://192.168.100.22/

ProxyPassReverse / http://192.168.100.22/

ProxyPass 很好理解,就是把所有来自客户端对http://www.test.com的请求转发给http://192.168.100.22上进行处理,ProxyPassReverse 的配置总是和ProxyPass 一致,但用途很让人费解。

似乎去掉它很能很好的工作,事实真的是这样么,其实不然,如果响应中有302重定向,ProxyPassReverse就派上用场。

举例说明,假设用户访问http://www.test.com/exam.php,通过转发交给http://192.168.100.22/exam.php处理,

假定exam.php处理的结果是实现redirect到login.php(使用相对路径,即省略了域名信息),如果没有配置反向代理,客户端收到的请求响应是重定向操作,并且重定向目的url为http://192.168.100.22/login.php ,而这个地址只是代理服务器能访问到的,可想而知,客户端肯定是打不开的,反之如果配置了反向代理,则会在转交HTTP重定向应答到客户端之前调整它为http://www.test.com/login.php,即是在原请求之后追加上了redirect的路径。当客户端再次请求http://www.test.com/login.php,代理服务器再次工作把其转发到http://192.168.100.22/login.php。

转载于:https://www.cnblogs.com/aaa103439/p/3543830.html

你可能感兴趣的文章
走过电竞之路的程序员
查看>>
JQ 获取地址栏参数
查看>>
关于AFNetworking访问网络超时的设置
查看>>
让前端独立于后端进行开发,模拟数据生成器Mock.js
查看>>
微信公众平台开发—利用OAuth2.0获取微信用户基本信息
查看>>
golang遇到的win下读取txt字符乱码的问题
查看>>
Binary Search--二分查找
查看>>
《计算机图形学》2.1.6 三维观察设备 学习笔记
查看>>
QT在线
查看>>
以P2P网贷为例互联网金融产品如何利用大数据做风控?
查看>>
Polymer初探
查看>>
zprofiler三板斧解决cpu占用率过高问题(转载)
查看>>
深入浅出NIO Socket实现机制
查看>>
bzoj 1930: [Shoi2003]pacman 吃豆豆 [费用流]
查看>>
(数字IC)低功耗设计入门(三)——系统与架构级低功耗设计
查看>>
Dynamics CRM2016 新功能之从CRM APP中导出数据至EXCEL
查看>>
Android——推断Service是否已经启动
查看>>
subprocess模块
查看>>
大数据入门基础系列之初步认识大数据生态系统圈(博主推荐)
查看>>
linux下命令行的查找顺序
查看>>